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

[SOLUCIONADO] Realizar peticion de 4 tablas

Estas en el tema de Realizar peticion de 4 tablas en el foro de Mysql en Foros del Web. Hola quisiera saber como hago para realizar una peticion de 4 tablas, las 4 estan relacionadas sera algo muy tonto pero la verdad es que ...
  #1 (permalink)  
Antiguo 11/02/2015, 17:41
 
Fecha de Ingreso: febrero-2015
Mensajes: 5
Antigüedad: 9 años, 2 meses
Puntos: 0
Pregunta Realizar peticion de 4 tablas

Hola quisiera saber como hago para realizar una peticion de 4 tablas, las 4 estan relacionadas sera algo muy tonto pero la verdad es que soy novato en esto y no se como hacerlo correctamente aca las tablas

clientes (id, nombres, apellidos, etc)
productos (id, nombre, descripcion)
pedidos (id, idcliente, fecha, estado)
lineaspedido (id, idpedido, idproducto, cantidad)

Ya lo he intentado con el INNER JOIN pero no se muestra debidamente

Código MySQL:
Ver original
  1. SELECT pedidos.id AS idpedido,fecha,estado,nombre,apellidos,email,telefono,unidades,idproducto
  2. FROM pedidos JOIN clientes ON pedidos.idcliente = clientes.id
  3. JOIN lineaspedido ON lineaspedido.id = lineaspedido.idpedido
  4. ORDER BY estado,fecha ASC

Gracias de antemano

Última edición por gnzsoloyo; 11/02/2015 a las 18:55
  #2 (permalink)  
Antiguo 11/02/2015, 19:01
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Realizar peticion de 4 tablas

Estás cerca, pero estás relacionando mal las lineas de pedido con el pedido.
Código MySQL:
Ver original
  1.     pedidos.id idpedido,
  2.     fecha,
  3.     estado,
  4.     nombre,
  5.     apellidos,
  6.     email,
  7.     telefono,
  8.     unidades,
  9.     idproducto
  10.     clientes C
  11.         INNER JOIN
  12.     pedidos P ON C.id = P.idcliente
  13.         INNER JOIN
  14.     lineaspedido L ON P.id = L.idpedido
  15.         INNER JOIN
  16.     productos PR ON L.idproducto = PR.id
  17. ORDER BY estado , fecha ASC
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 11/02/2015, 19:48
 
Fecha de Ingreso: febrero-2015
Mensajes: 5
Antigüedad: 9 años, 2 meses
Puntos: 0
Respuesta: Realizar peticion de 4 tablas

Ok amigo te comento que lo intente de la manera que me explicas pero no funciona me dice Unknown column 'pedidos.id' in 'field list' por otra parte mejore un poco la peticion de esta manera

SELECT pedidos.id AS idpedido, idproducto, fecha, estado, nombre, apellidos, email, telefono, unidades, nombree
FROM pedidos
JOIN clientes ON pedidos.idcliente = clientes.id
JOIN lineaspedido ON lineaspedido.idpedido = pedidos.idcliente
JOIN productos ON productos.id = pedidos.id
ORDER BY `pedidos`.`id` ASC
LIMIT 0 , 30

pero solamente me muestra los dos primeros pedidos "idpedido" (1 y 2) que tengo en la base de datos teniendo en cuenta que tengo 8, te dejare una imagen porque no se si me explique bien jeje
  #4 (permalink)  
Antiguo 11/02/2015, 22:17
 
Fecha de Ingreso: febrero-2015
Mensajes: 5
Antigüedad: 9 años, 2 meses
Puntos: 0
Respuesta: Realizar peticion de 4 tablas

Amigo ya resolvi muchas gracias!!!

Etiquetas: php, select
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 14:34.