Agrupar datos de MySQL

Marcos Saldivar baron.rojo.cuerdas.de.acero en gmail.com
Lun Nov 17 08:53:09 CLST 2008


El día 16 de noviembre de 2008 22:09, Pedro Pablo Vivanco del Rio
<ppvivanco en gmail.com> escribió:
> Estimados:
>
> Tengo una base de datos con un fixture y en donde la fecha y hora se guardan
> en un campo tipo DATETIME...mi pregunta es la siguiente: se pueden agrupar
> al mostrarse? Les dejo un ejemplo de como me gustaria que se viera:
>
> 16 de Noviembre
> 16:00 LOCAL v/s VISITA
> 17:00 LOCAL v/s VISITA
> 18:00 LOCAL v/s VISITA
>
> 17 de Noviembre
> 16:00 LOCAL v/s VISITA
> 17:00 LOCAL v/s VISITA
> 18:00 LOCAL v/s VISITA
>
> Se entiende la idea?


Algo así:

 create table foo(fch date);
 create table partidos(fch date, local varchar(30), visita varchar(30));
 insert into foo values(now());
 insert into partidos values(now(), 'Tricolor Paine', 'Barrabase'),
(now(), 'Deportivo pelotillehue', 'Correa Montt');
 select f.fch, group_concat(concat(p.local,' v/s ',p.visita)) as
partido from foo f, partidos p where f.fch = p.fch group by f.fch;

El secreto esta en group_concat, claro le faltan las reglas de
integridad referencial, pero se entiende la solucion o no ???
saludos.-



Más información sobre la lista de distribución PHP