Ver Mensaje Individual
  #2 (permalink)  
Antiguo 13/05/2008, 10:27
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Re: Hacer un inner join pero que no devuelva varias filas

Si lo quieres hacer en MySQL, obtendrás dos campos, uno con el id del usuario y otro con los distintos id de los idiomas separados con el separador que quieras (en el ejemplo, un espacio en blanco). Para eso se usa GROUP_CONCAT del campo que quieras reunir y GROUP BY del campo que sirve para agrupar, en tu caso el ID de usuario.

select ID_usuario_intercambio, GROUP_CONCAT (CAST (ID_idioma_aprender AS CHAR), ORDER BY ID_idioma_aprender, SEPARATOR ' ') AS idiomas FROM intercambio_idioma INNER JOIN intercambio_idioma_aprender ON intercambio_idioma.ID_usuario_intercambio=intercam bio_idioma_aprender.ID_usuario_intercambio_aprende r GROUP BY ID_usuario_intercambio

De todas formas, existen otras opciones con PHP mediante uso de matrices, etc. Pregunta en ese foro si no te satisface esta solución.

Última edición por jurena; 13/05/2008 a las 11:04