Me imagino que si hicieras un engendro tal como, por ejemplo (asumiendo que la
tabla Detalle tenga un campo identificador propio, digamos idDetalle):
SELECT Det.IDarticulo, Det.Cantidad, Det.Precio,
Case
When Det.idDetalle = (select min(idDetalle) from
Detalle) then Cab.Descuento
Else 0
End Descuento
FROM Detalle INNER JOIN Encabezado ON Det.Factura = Cab.Factura
Order By Det.idDetalle
No lo probé pero supongo que esto o algo muy similar te daría el resultado que
estás buscando, pero la verdad es que yo tomaría el cursor una vez que lo tengo
dentro del fox y le haría una pasada para eliminar todos los valores que no me
interesan.
De: [email protected] [mailto:[email protected]] En nombre de Ariel Arrebola
Enviado el: miércoles, 19 de abril de 2017 09:08
Para: GUFA List Member
Asunto: [GUFA] OT sentencia SQL
Hola Nicolas, cambia en Inner por left
SELECT Det.IDarticulo, Det.Cantidad, Det.Precio, Cab.Descuento
FROM Detalle Det LEFT JOIN Encabezado Cab ON Det.Factura = Cab.Factura
saludos
El 15 de abril de 2017, 15:32, Nicolas Arnaldo <[email protected]>
escribió:
Buenas tardes grupo, tengo un problema que no se como resolver en SQL.
Tengo dos tablas, maestro y detalles.
En una sentencia SQL (sql server) necesito devolver todos los items, y tambien
traer en un registro un valor del encabezado, sin que ese valor se repita.
Es decir, EJ.
Factura Articulo_Detalle Cantidad_Detalle Precio_Detalle Descuento_Encabezado
00015 C45 10 $150.50 $20
00015 C50 15 $220.75 $0
00015 C75 5 $750.15 $0
Si hago
SELECT Det.IDarticulo, Det.Cantidad, Det.Precio, Cab.Descuento
FROM Detalle INNER JOIN Encabezado ON Det.Factura = Cab.Factura
el descuento del encabezado se repite en todos los items, estoy tratando de
usar DISTINCT
pero no logro llegar al resultado deseado.
El importe de descuento lo deberia poner en cualquier item, no importa cual,
simplemente
con que figure el importe del encabezado una sola vez es suficiente.
Muchas gracias de antemano.
---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus