Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/02/2007, 14:06
Avatar de RsOfT
RsOfT
 
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 2 meses
Puntos: 7
De que forma puedo traer los últimos 3 registros agrupado por algo específico

Les tengo una pregunta.

Necesito buscar la cantidad facturada de un producto específico en las últimas 3 facturas hecha a un cliente específico.

El problema es que tengo que buscar de cada producto lo facturado en las últimas tres facturas por cada cliente

Actualmente tengo 35,000 clientes aproximadamente y actualmente la empresa vende 162 productos diferentes. Esto significa que estoy haciendo 35,000 x 162 consultas a la base de datos para buscar la información.

¿Qué harían ustedes para traer toda la información en una sola consulta?

El Select que estoy haciendo es el siguiente:
Código:
SELECT TOP 3 SUM(FacturasDetalle.CantVendida) AS Cantidad, Facturas.Fecha FROM Facturas 
INNER JOIN FacturasDetalle ON Facturas.NoFactura = FacturasDetalle. NoFactura 
WHERE Facturas.CodCliente = '0001000248' AND FacturasDetalle.CodProducto = '000000201'
GROUP BY Facturas.Fecha
ORDER BY Facturas.Fecha DESC
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--