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

Ayuda con consulta de muchas tablas encadenas

Estas en el tema de Ayuda con consulta de muchas tablas encadenas en el foro de Mysql en Foros del Web. Ayuda con consulta de muchas tablas encadenas Me estoy volviendo loco tratando de tener todos los campos que necesito en UNA sola consulta. Espero alguien ...
  #1 (permalink)  
Antiguo 21/05/2010, 11:39
 
Fecha de Ingreso: mayo-2005
Mensajes: 284
Antigüedad: 18 años, 10 meses
Puntos: 11
Ayuda con consulta de muchas tablas encadenas

Ayuda con consulta de muchas tablas encadenas

Me estoy volviendo loco tratando de tener todos los campos que necesito en UNA sola consulta.
Espero alguien pueda ayudarme.
(lo simplifico un poco)

LAS TABLAS SON:

usuarios
---------
ID (INT)
Nombre (VARCHAR 25)
Apellido (VARCHAR 25)
ZonaID (INT)
CategoriaID (INT)

zonas
--------
ID (INT)
Nombre (VARCHAR 20)
FotosSRC (VARCHAR 255)
CiudadID (INT)


ciudades
---------
ID (INT)
Nombre (VARCHAR 50)
CP (MEDIUMINT)
Provincia (VARCHAR 20)

categorias
----------
ID (INT)
Nombre (VARCHAR 20)
ImagenSRC (VARCHAR 30)
Texto (VARCHAR 255)


Como puedo en una consulta, dado el ID de un usuario, conseguir todos estos datos:
usuario.Nombre, zona.Nombre, ciudad.nombre


Mi confusion viene porque para acceder a ciudad.nombre antes tengo que buscar el ID en zonas ya que desde usuario solo tengo acceso a ZonaID.
  #2 (permalink)  
Antiguo 21/05/2010, 16:52
 
Fecha de Ingreso: abril-2009
Ubicación: Colombia
Mensajes: 949
Antigüedad: 15 años
Puntos: 27
Respuesta: Ayuda con consulta de muchas tablas encadenas

Creo que tu base de datos no tiene integridad, es decir, no veo que el ID de la tabla zonas, sea el mismo ID de la tabla ciudad, no se si me entiendas pero este modelo deberia tener mas o menos algo asi:

Tabla Zonas
Código SQL:
Ver original
  1. ID_zona
  2. Nombre zona

Tabla Usuario
Código SQL:
Ver original
  1. Id_usuario
  2. ID_zona
  3. Nombre_usuario

Pienso que tu modelo esta mal hecho por ese motivo no se puede llegar a realizar la consulta que tu quieres..
  #3 (permalink)  
Antiguo 21/05/2010, 17:13
 
Fecha de Ingreso: mayo-2005
Mensajes: 284
Antigüedad: 18 años, 10 meses
Puntos: 11
Respuesta: Ayuda con consulta de muchas tablas encadenas

Hola oscarbt!
Creo que no te entendí.
A lo mejor tipee mal algo, pero revisando no veo el error.
La situacion seria esta.
TABLA 1 -> TABLA 2 -> TABLA 3
o sea, Tabla1 tiene un campo que hace ref. a un ID de la tabla 2, la tabla 2 tiene un campo que hace referencia a un ID de la tabla 3.

Y lo que deseo es, en una unica consulta, obtener campos que estan en TABLA1, en TABLA2 y en TABLA3, conociendo SOLO el ID de TABLA1.

Podria ser algo asi?:

SELECT TABLA1.valor, TABLA2.valor, TABLA3.valor
FROM TABLA1, TABLA2, TABLA3
WHERE TABLA1.ID = $id
AND TABLA1.tabla2ID = TABLA2.ID
AND TABLA2.tabla3ID = TABLA3.ID

Etiquetas: muchas, tablas
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 21:44.