
24/06/2008, 10:55
|
Colaborador | | Fecha de Ingreso: marzo-2008 Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 17 años Puntos: 300 | |
Respuesta: Consulta atipica Para esas cosas MySQL tiene la función GROUP_CONCAT. Pongamos que tienes una tabla de titulos, otra de autores, y una tercera de autortitulo.
SELECT t.titulo, GROUP_CONCAT( a.autor SEPARATOR '; ' ) AS autores FROM titulos t INNER JOIN autortitulo at ON t.idtitulo = at.refidtitulo INNER JOIN autores a ON at.refidautor = a.idautor GROUP BY t.idtitulo ORDER BY t.titulo
Por supuesto, eso puede hacerse fácilmente con programación, usando arrays, etc., y no haría falta, claro el uso de group_concat, pero ahora has pedido hacerlo directamente desde la base, y yo creo que este es el mejor modo de hacerlo.
Última edición por jurena; 24/06/2008 a las 11:19 |