Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

JOIN sin repetir campos

Estas en el tema de JOIN sin repetir campos en el foro de Mysql en Foros del Web. hola que tal tengo un problema con una consulta :( tengo 2 tablas, menu(id, titulo) modulos(id, titulo, menu_id) lo que necesito es obtener la tabla ...
  #1 (permalink)  
Antiguo 28/03/2011, 09:36
 
Fecha de Ingreso: enero-2008
Mensajes: 179
Antigüedad: 16 años, 3 meses
Puntos: 0
Pregunta JOIN sin repetir campos

hola que tal tengo un problema con una consulta :(

tengo 2 tablas,

menu(id, titulo)
modulos(id, titulo, menu_id)

lo que necesito es obtener la tabla menu relacionando menu.id = modulos.menu_id

pero en los modudos puede haber mas de 1 campo que tenga dos veces el mismo menu_id y con LEFT JOIN me devuelve una tabla con registros repetidos y solo necesito quelo tome una vez los campos de menu.

Ademas nesesito que los registros de modulos sean a partir de un WHERE modulos.id = 1 AND modulos.id = 2 AND modulos.id = 3

ojala alla sido explicito :P

saludos y gracias :)
  #2 (permalink)  
Antiguo 28/03/2011, 10:43
Avatar de Heimish2000  
Fecha de Ingreso: enero-2011
Ubicación: Madrid
Mensajes: 844
Antigüedad: 13 años, 3 meses
Puntos: 89
Respuesta: JOIN sin repetir campos

Haz un GROUP BY por los campos que quieras.

Por otra parte, esto que pones

WHERE modulos.id = 1 AND modulos.id = 2 AND modulos.id = 3

es imposible. En todo caso serían OR, no AND.
  #3 (permalink)  
Antiguo 30/03/2011, 03:09
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: JOIN sin repetir campos

Igual te recomendaria que cambiaras los nombres de los campos por acronimos estandar como por ejemplo:
menu (men_id, men_titulo)
modulos(mod_id, mod_titulo, men_id)

De esta manera puedes utilizar NATURAL JOIN y santo remedio.

Para el WHERE intenta usar WHERE modulos.id IN (1,2,3)

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!

Etiquetas: campos, join, repetir
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:57.