Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/05/2011, 11:17
SadlyMistaken
 
Fecha de Ingreso: febrero-2007
Mensajes: 13
Antigüedad: 17 años, 8 meses
Puntos: 0
Select de una tabla autocruzada de Texto

ueno, pues aquí va mi pregunta. Si yo tengo esta tabla creada (que por cierto, creo que se ve horrible puesta así... intenten copiar y pegar mi texto en GEdit o el Bloc de Notas y se verá mejor..pienso yo):
Código:
mysql> select * from 'tabla';
+------+--------+-----------+--------------+
|  id  | nombre | actividad | dia_semana   |
+------+--------+-----------+--------------+
|    1 | jose   | karate    | lunes        |
|    2 | maria  | ballet    | miercoles    |
|    3 | manuel | plastica  | viernes      |
|    4 | jesus  | futbol    | lunes        |
|    5 | rocio  | ballet    | lunes        |
|    6 | laura  | karate    | miercoles    |
|    7 | sergio | plastica  | viernes      |
|    8 | jorge  | futbol    | lunes        |
+------+--------+-----------+--------------+
8 rows in set (0.00 sec)
y quiero conseguir esto:
Código:
+----------------------+----------------------------------------------+
| actividad/dia_semana | lunes         | miercoles | viernes          |
+----------------------+----------------------------------------------+
| karate               | jose          | laura     |                  |
| ballet               | rocio         | maria     |                  |
| plastica             |               |           | manuel , sergio  |
| futbol               | jesus , jorge |           |                  |
+---------------------------------------------------------------------+
Sabiendo que Siempre en el mismo día y misma actividad, SÓLO concurren 2 niños por actividad, nunca más niños. Pero en un futuro tambien estarán el resto de días de la semana ocupados, no solo esos tres del ejemplo.
yo sólo he conseguido esto:
Código:
mysql> select 'actividad' , if(MAX('nombre')=MIN('nombre') , 'nombre' , CONCAT(MAX('nombre'), ' , ', MIN('nombre'))) AS alumnos
-> FROM 'tabla'
-> GROUP BY 'actividad';
+----------------+----------------+
| actividad      | alumnos        |
+----------------+----------------+
| karate         | jose , laura   |
| ballet         | rocio , maria  |
| plastica       | manuel, sergio |
| futbol         | jesus , jorge  |
+----------------+----------------+
4 rows in set (0.00 sec)
Espero puedan ayudarme, mil gracias.