elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  como hacer una consultar de 3 tablas
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: como hacer una consultar de 3 tablas  (Leído 2,139 veces)
Crarmon

Desconectado Desconectado

Mensajes: 11


Ver Perfil
como hacer una consultar de 3 tablas
« en: 10 Febrero 2015, 07:11 am »

tengo 4 tabla   shop_customer(customer_id(pk),user_id,address_id)  la otra tabla es shop_order(order_id(pk), custtomer_id) y tengo shop_order_position(order_id,Id_producto,amount) y por ultimo usuario(id,rol)

ok mi pregunta es la siguiente tengo que hacer dos  consulta la primera es que

quiero ver los monto de los  producto por cada usuario que sea cliente por la diferentes  ordenes es decir si mi cliente en una orden llevo producto 1 y producto 2 entonces que me muestre la cantidad por lo producto que se llevo en esa orden
la segunda todos cantidades de producto por ordenes


En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.706


WOS & Khan & Calero LDN


Ver Perfil WWW
Re: como hacer una consultar de 3 tablas
« Respuesta #1 en: 10 Febrero 2015, 13:12 pm »

Código
  1. shop_customer(customer_id(pk), user_id, address_id);
  2. shop_order(order_id(pk), custtomer_id);
  3. shop_order_position(order_id, Id_producto, amount);
  4. usuario(id, rol);

Realizas un UNION tabla por tabla con su respectivo FOREIGN KEY, por ejemplo:
Código
  1. Usuario(uID(pk), nombre, apellido);
  2. TipoUsuario(uIDTipo, uIDUsuario, nombre);

Al realizar el UNION quedaría así:
Código
  1. SELECT Usu.uID, Usu.Nombre, Usu.Apellido, TipUsu.Nombre FROM Usuario Usu UNION TipoUsuario TipUsu ON TipUsu.uIDUsuario = Usu.uID

Motrara todos los usuarios con su respectivo tipo de usuario. Funciona de igual forma, con x cantidad de tablas, siempre y cuando se tenga una relación.


En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
crisoof

Desconectado Desconectado

Mensajes: 48


Ver Perfil
Re: como hacer una consultar de 3 tablas
« Respuesta #2 en: 10 Febrero 2015, 14:09 pm »

DEBERIAS SER UN POCO MAS CLARO CON TU PREGUNTA Y OJALA INDICAR LAS RELACIONES ENTRE LAS TABLAS, asi seria mucho mas facil para todos poder ayudar,

imaginare que las tablas se relacionan asi

Citar
shop_customer ---->shop_order
shop_order      ---->shop_order_position
shop_customer ---->usuario

asumiendo que las relaciones entre las tablas son esas, puedes hacer un join para enlazar las tablas entre si y obtener lo que necesitas
esto seria mas o menos asi
Código:
           SELECT U.NOMBRE, U.APELLIDO,SO.ORDER_ID, SOP.ID_PRODUCTO, SOP.AMOUNT
              FROM SHOP_CUSTOMER SC
      INNER JOIN SHOP_ORDER SO
                  ON SC.CUSTOMER_ID = SO.CUSTTOMER_ID ---CUSTTOMER_ID?? O CUSTOMER_ID, SEGURO FUE ERROR Y DEBERIA SER CUSTOMER_ID
      INNER JOIN SHOP_ORDER_POSITION SOP
                  ON SO.ORDER_ID = SOP.ORDER_ID
      INNER JOIN USUARIO U
                  ON SC.USER_ID = U.ID
 
LA SEGUNDA CON ESTE EJEMPLO TIENES PARA HACER LA SEGUNDA, aunque no se que tan bien lo resolví porque no lo pude probar y tu capacidad para explicar el problema es un poco mala, o quizás yo soy malo entendiendo

ESO O ENTENDI MAL?

Saludos
En línea

Crarmon

Desconectado Desconectado

Mensajes: 11


Ver Perfil
Re: como hacer una consultar de 3 tablas
« Respuesta #3 en: 10 Febrero 2015, 20:53 pm »

http://i.imgur.com/DT5etcE.png aqui esta la imagen
En línea

Crarmon

Desconectado Desconectado

Mensajes: 11


Ver Perfil
Re: como hacer una consultar de 3 tablas
« Respuesta #4 en: 10 Febrero 2015, 21:01 pm »

explico un usuario tienes varias ordenes que es la tabla shop_order, la ordenes tienen varios direccion de envio , compra y usuarios, ademas esa ordenes tienen posiciones que es la  tabla shop_order_position, es decir quiero saber la sumatoria por la cantidades de  producto de los usuarios cliente 
« Última modificación: 10 Febrero 2015, 21:04 pm por Crarmon » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines