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

[SOLUCIONADO] Problemas al unir dos tablas con inner Join

Estas en el tema de Problemas al unir dos tablas con inner Join en el foro de Mysql en Foros del Web. Hola que tal, ante todo saludos a todos soy nuevo por aqui, espero aportar con mis conocimientos a toda la comunidad bueno tengo un gran ...
  #1 (permalink)  
Antiguo 05/08/2015, 10:34
Avatar de Anquayllu  
Fecha de Ingreso: agosto-2015
Ubicación: Lima
Mensajes: 6
Antigüedad: 9 años, 3 meses
Puntos: 0
Pregunta Problemas al unir dos tablas con inner Join

Hola que tal, ante todo saludos a todos soy nuevo por aqui, espero aportar con mis conocimientos a toda la comunidad

bueno tengo un gran problema resulta que tengo tres tablas articulos, boletas, y facturas, lo que intento hacer es que las tres tablas se muestren en una sola consulta, es decir que muestre los articulos vendidos tanto en las boletas como en las facturas
por ejemplo:
Articulo: Leche y que me sume la cantidad de leche vendida en boletas con la cantidad de leche vendida en facturas, probe con inner join pero el problema es que no me esta haciendo la suma correctamente
Código SQL:
Ver original
  1. SELECT eefactulinea.*,factulinea.*,articulos.*,SUM(eefactulinea.cantidad) AS numero
  2. FROM  articulos,eefactulinea INNER JOIN factulinea ON eefactulinea.codigo=factulinea.codigo
  3. WHERE factulinea.codigo=articulos.codarticulo AND articulos.codarticulo=eefactulinea.codigo
  4. GROUP BY articulos.codarticulo
saludos

Última edición por gnzsoloyo; 05/08/2015 a las 11:34 Razón: Codigo de programación no permitido en foros de BBDD. Editado luego de traslado a MySQL
  #2 (permalink)  
Antiguo 05/08/2015, 11:20
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: Problemas al unir dos tablas con inner Join

Muevo tu tema de Php a MySql, que es donde debiste crearlo.
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 05/08/2015, 11:22
 
Fecha de Ingreso: marzo-2015
Mensajes: 183
Antigüedad: 9 años, 8 meses
Puntos: 8
Respuesta: Problemas al unir dos tablas con inner Join

Podrías detallar los campos de las 3 tablas que usas y como sería el resultado que deseas que se visualiza.
De antemano adelanto que usando la CLAUSULA UNION es posible, pero necesito saber el nombre de los campos que intervienen en tu consulta.
  #4 (permalink)  
Antiguo 05/08/2015, 15:29
Avatar de Anquayllu  
Fecha de Ingreso: agosto-2015
Ubicación: Lima
Mensajes: 6
Antigüedad: 9 años, 3 meses
Puntos: 0
Respuesta: _ al unir dos tablas con inner Join

bueno las tablas son
Articulos
- codigo_art : 001
- descripcion : Gaseosa
- precio : 12 dolares
- stock : 72 unidades

Boletas_cabezera
- codboleta : 100
- fecha : 22/05/2015
- totalboleta : 36 dolares

Boleta_detalle
- codboleta : 100
- codigo_art : 001
- cantidad : 3
- precio : 12 soles
- importe : 36 soles

facturas_cabezera
- codfactura : 201
- fecha : 26/05/2015
- totalboleta : 12 dolares

facturas_detalle
- codfactura : 201
- codigo_art : 001
- cantidad : 1
- precio : 12 soles
- importe : 12 soles
entre otros campos pero los mas importantes son estos

la idea es que se sumen el campo cantidad de la boleta y factura = "4" y al momento de hacer el reporte que aparezca esa suma junto al nombre del producto

Producto cantidad importe
Gaseosa 4 48

Última edición por Anquayllu; 05/08/2015 a las 15:35
  #5 (permalink)  
Antiguo 05/08/2015, 15:37
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Problemas al unir dos tablas con inner Join

Código MySQL:
Ver original
  1. SELECT eefactulinea.*,factulinea.*,articulos.*,SUM(eefactulinea.cantidad) AS numero
  2. FROM  articulos,eefactulinea INNER JOIN factulinea ON eefactulinea.codigo=factulinea.codigo
  3. WHERE factulinea.codigo=articulos.codarticulo AND articulos.codarticulo=eefactulinea.codigo
  4. GROUP BY articulos.codarticulo
Aqui tienes un join implicito articulos,eefactulinea porque no usas mejor un inner join, porque no te sale el group by, porque estas mostrando toooodas las columnas y nada mas agrupando por una, prueba nada mas con esto:

Código MySQL:
Ver original
  1. SELECT articulos.codarticulo,SUM(eefactulinea.cantidad) AS numero
  2. FROM  articulos,eefactulinea INNER JOIN factulinea ON eefactulinea.codigo=factulinea.codigo
  3. WHERE factulinea.codigo=articulos.codarticulo AND articulos.codarticulo=eefactulinea.codigo
  4. GROUP BY articulos.codarticulo
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #6 (permalink)  
Antiguo 06/08/2015, 11:51
Avatar de Anquayllu  
Fecha de Ingreso: agosto-2015
Ubicación: Lima
Mensajes: 6
Antigüedad: 9 años, 3 meses
Puntos: 0
Respuesta: Problemas al unir dos tablas con inner Join

Cita:
Iniciado por Libras Ver Mensaje
Código MySQL:
Ver original
  1. SELECT eefactulinea.*,factulinea.*,articulos.*,SUM(eefactulinea.cantidad) AS numero
  2. FROM  articulos,eefactulinea INNER JOIN factulinea ON eefactulinea.codigo=factulinea.codigo
  3. WHERE factulinea.codigo=articulos.codarticulo AND articulos.codarticulo=eefactulinea.codigo
  4. GROUP BY articulos.codarticulo
Aqui tienes un join implicito articulos,eefactulinea porque no usas mejor un inner join, porque no te sale el group by, porque estas mostrando toooodas las columnas y nada mas agrupando por una, prueba nada mas con esto:

Código MySQL:
Ver original
  1. SELECT articulos.codarticulo,SUM(eefactulinea.cantidad) AS numero
  2. FROM  articulos,eefactulinea INNER JOIN factulinea ON eefactulinea.codigo=factulinea.codigo
  3. WHERE factulinea.codigo=articulos.codarticulo AND articulos.codarticulo=eefactulinea.codigo
  4. GROUP BY articulos.codarticulo
Aun me persiste el mismo problema de la suma de cantidades
  #7 (permalink)  
Antiguo 07/08/2015, 11:17
Avatar de Anquayllu  
Fecha de Ingreso: agosto-2015
Ubicación: Lima
Mensajes: 6
Antigüedad: 9 años, 3 meses
Puntos: 0
Problemas al unir dos tablas con inner Join

despues de tanto revisar pude solucionar en parte el problema
Código SQL:
Ver original
  1. SELECT articulos.codarticulo,articulos.datos_producto,consolidado.codigo,SUM(consolidado.cantidad) AS total
  2. FROM
  3. (
  4. SELECT codigo,cantidad FROM eefactulinea
  5. UNION ALL
  6. SELECT codigo,cantidad FROM factulinea
  7. ) AS consolidado,articulos WHERE articulos.codarticulo=consolidado.codigo
  8. GROUP BY codigo
Cita:
Editado: Código de programación no permitido en foros de Bases de Datos.
Leer las normas del foro, por favor.
ahora el ultimo detalle esta en hacer el filtro de búsqueda, es decir que al ingresar los parámetros en esta ventana


se muestren los datos del codigo

Última edición por gnzsoloyo; 07/08/2015 a las 12:15
  #8 (permalink)  
Antiguo 07/08/2015, 12:16
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Problemas al unir dos tablas con inner Join

Cita:
ahora el ultimo detalle esta en hacer el filtro de búsqueda, es decir que al ingresar los parámetros en esta ventana


se muestren los datos del codigo
Eso, estimado, es OFF TOPIC en este foro. Es programación, y los temas de programación se tratan en sus respectivos foros, pero no en el de BBDD.
En tanto la query devuelva los datos, el qué hagas con ellos no es relevante para la base ni para SQL.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: join, php, select, tabla, 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 22:26.