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

Ayuda Consulta SQL Server

Estas en el tema de Ayuda Consulta SQL Server en el foro de SQL Server en Foros del Web. Buenas tardes a todos compañeros del foro He abierto este thread para solicitar su ayuda en una consulta que necesito hacer. Tengo 2 tablas una ...
  #1 (permalink)  
Antiguo 30/12/2009, 17:11
Avatar de aerohugo  
Fecha de Ingreso: octubre-2007
Mensajes: 23
Antigüedad: 16 años, 6 meses
Puntos: 0
Ayuda Consulta SQL Server

Buenas tardes a todos compañeros del foro

He abierto este thread para solicitar su ayuda en una consulta que necesito hacer. Tengo 2 tablas una del encabezado de una factura y otra con el detalle.

FACTURA
idfactura
fecha
cliente

DETALLE_FACTURA

idfactura
producto
cantidad
precio

Yo necesito que la consulta me devuelva todas las facturas que en la misma factura contengan dos productos que yo le di. Por ejemplo el producto "x" y el producto "y". Cómo le digo al SQL server: "Devuelveme todas las facturas en cuyo detalle existan el producto X y el producto Y"

He intentado hacerlo con un exists pero no logro obtener resultados. Alguien me podría dar una ayuda por favor compañeros se los agradeceré muchísimo.

Saludos.
  #2 (permalink)  
Antiguo 31/12/2009, 08:21
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 4 meses
Puntos: 38
Respuesta: Ayuda Consulta SQL Server

Cita:
"Devuelveme todas las facturas en cuyo detalle existan el producto X y el producto Y"
Código:
SELECT F.*, D.*
FROM   ( -- Todas las facturas que tienen el producto X
            SELECT idfactura
            FROM   Detalle
            WHERE producto  = @ProductoX
            GROUP BY idfactura
          ) X
INNER JOIN
          ( -- Todas las facturas que tienen el producto Y
            SELECT idfactura
            FROM   Detalle
            WHERE producto  = @ProductoY
            GROUP BY idfactura
          ) Y
ON      X.idfactura = Y.idfactura  -- Todas las facturas que tienen el producto X y Y
Inner join  Factura F   
ON     F.idfactura = X.idfactura
INNER JOIN
           Detalle D
ON       F.idfactura= D.idfactura
Saludos!
__________________
La sencillez y naturalidad son el supremo y último fin de la cultura...
--
MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications.
  #3 (permalink)  
Antiguo 31/12/2009, 15:57
Avatar de aerohugo  
Fecha de Ingreso: octubre-2007
Mensajes: 23
Antigüedad: 16 años, 6 meses
Puntos: 0
De acuerdo Respuesta: Ayuda Consulta SQL Server

Muchísimas gracias por tu ayuda compañero Andres95 tu respuesta ha sido correcta y he podido realizar mi consulta. Te lo agradezco mucho

Saludos.
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 19:34.