Principales respuestas
Mostrar datos de dos tablas

Pregunta
-
Buenos dias comunidad, tengo dos tablas una llamada VentaDetalle y otra tabla denominada Devolucion, ambas tablas tienen un atributo denominado art_Clave que proviene de una tabla llamada Articulo, necesito mostrar tanto el campo art_Clave de la tabla VentaDetalle y de la tabla Devolucion, podrian ayudarmejueves, 12 de noviembre de 2015 14:42
Respuestas
-
y no te lo muestra? o que es lo que quieres? si quieres una nueva columna devolución para los artículos que lo tengan, es una cosa, dos líneas una con cargos y otra con devoluciones, es un union all.. ¿Qué es lo que quieres hacer ?
Comparte lo que sepas, aprende lo que no sepas (FGG)
portalSQL
El rincón del DBA- Propuesto como respuesta Karen MalagónModerator jueves, 19 de noviembre de 2015 15:29
- Marcado como respuesta Miguel Egea GómezMVP, Moderator jueves, 19 de noviembre de 2015 15:57
jueves, 12 de noviembre de 2015 18:47Moderador
Todas las respuestas
-
Hola Gspindola
SELECT artv.art_Clave, artd.art_Clave, FROM VentaDetalle vdet INNER JOIN Articulo artv ON (artv.art_Clave = vdet.art_Clave) LEFT JOIN Devolucion devo ON (devo.idXXXX = vdet.idXXXX) LEFT JOIN Articulo artd ON (artd.art_Clave = devo.art_Clave)
Para obtener la información que requieres debes de combinar las filas coincidentes entre las tablas [VentaDetalle] y [Devolucion] con la tabla [Articulo], pero, se entiende que hay una relación entre [VentaDetalle] y [Devolucion] ¿verdad?, deje - supuesto - una columna [idXxxx] que es la que uniría ambas tablas
- Editado Willams Morales jueves, 12 de noviembre de 2015 15:04
jueves, 12 de noviembre de 2015 14:56 -
No entendi muy bien esa consulta, mira tengo la siguiente :
"SELECT tVentaDetalle.art_Clave as 'SKU', tVentaDetalle.art_Nombre as 'ARTICULO', vdet_Cantidad as 'CANTIDAD', vdet_Importe as 'IMPORTE', vdet_Total as 'TOTAL', vdet_Fecha as 'FECHA' FROM tVentaDetalle INNER JOIN tArticulo ON tVentaDetalle.art_Clave=tArticulo.art_Clave WHERE tart_Clave=@sector AND (vdet_Fecha BETWEEN @fechai AND @fechaf)" a esa consulta me hace falta agregar el art_Clave de la tabla tDevolucion y quiero que aparezcan en la misma columna de tVentaDetalle.art_Clave
jueves, 12 de noviembre de 2015 15:43 -
SELECT tVentaDetalle.art_Clave as 'SKU', tVentaDetalle.art_Nombre as 'ARTICULO', vdet_Cantidad as 'CANTIDAD', vdet_Importe as 'IMPORTE', vdet_Total as 'TOTAL', vdet_Fecha as 'FECHA' FROM tVentaDetalle INNER JOIN tArticulo ON tVentaDetalle.art_Clave=tArticulo.art_Clave WHERE tart_Clave=@sector AND (vdet_Fecha BETWEEN @fechai AND @fechaf)"
UNION ALL
SELECT TDEVOLUCION.art_Clave as 'SKU', TDEVOLUCION.art_Nombre as 'ARTICULO', vdet_Cantidad as 'CANTIDAD', vdet_Importe as 'IMPORTE', vdet_Total as 'TOTAL', vdet_Fecha as 'FECHA' FROM
TDEVOLUCION
INNER JOIN tArticulo ON TDEVOLUCION.art_Clave=tArticulo.art_Clave WHERE tart_Clave=@sector AND (vdet_Fecha BETWEEN @fechai AND @fechaf)"
Comparte lo que sepas, aprende lo que no sepas (FGG)
portalSQL
El rincón del DBA- Editado Miguel Egea GómezMVP, Moderator jueves, 12 de noviembre de 2015 15:45
jueves, 12 de noviembre de 2015 15:45Moderador -
Hola Gspindola,
El proceso de devolución extorna una venta de manera parcial o total, pero para ello, tu modelo de datos deberá tener la relación necesaria para conocer que una determinada devolución pertenece a un documento (venta). Tu quieres mostrar el producto devuelto relacionado con la venta pero no muestras la relación entre venta y devolución, aunque, si caes en conciencia te darás cuenta que la devolución de un determinado ítem de venta mantiene el mismo producto.
Coméntanos, las tablas [VentaDetalle] [Devolucion] ¿no se relacionan? ¿cómo determinas una devolución a que venta afecta?
- Editado Willams Morales jueves, 12 de noviembre de 2015 16:35
jueves, 12 de noviembre de 2015 16:33 -
Es justamente lo que tengo mira
Dim queryString As String = "SELECT tVentaDetalle.art_Clave as 'SKU', tVentaDetalle.art_Nombre as 'ARTICULO', vdet_Cantidad as 'CANTIDAD', vdet_Importe as 'IMPORTE', vdet_Total as 'TOTAL', vdet_Fecha as 'FECHA' FROM tVentaDetalle INNER JOIN tArticulo ON tVentaDetalle.art_Clave=tArticulo.art_Clave WHERE tart_Clave=@sector AND (vdet_Fecha BETWEEN @fechai AND @fechaf)" & _ "UNION ALL SELECT tDevolucion.art_Clave as 'SKU', tDevolucion.art_Nombre as 'ARTICULO', vdet_Cantidad as 'CANTIDAD', vdet_Importe as 'IMPORTE', vdet_Total as 'TOTAL', vdet_Fecha as 'FECHA' FROM tDevolucion INNER JOIN tArticulo ON tDevolucion.art_Clave=tArticulo.art_Clave WHERE tart_Clave=@sector AND (dev_Fecha BETWEEN @fechai AND @fechaf)"
jueves, 12 de noviembre de 2015 16:34 -
y no te lo muestra? o que es lo que quieres? si quieres una nueva columna devolución para los artículos que lo tengan, es una cosa, dos líneas una con cargos y otra con devoluciones, es un union all.. ¿Qué es lo que quieres hacer ?
Comparte lo que sepas, aprende lo que no sepas (FGG)
portalSQL
El rincón del DBA- Propuesto como respuesta Karen MalagónModerator jueves, 19 de noviembre de 2015 15:29
- Marcado como respuesta Miguel Egea GómezMVP, Moderator jueves, 19 de noviembre de 2015 15:57
jueves, 12 de noviembre de 2015 18:47Moderador