01/07/2007, 10:20
|
| | | Fecha de Ingreso: noviembre-2006
Mensajes: 381
Antigüedad: 18 años, 1 mes Puntos: 6 | |
Re: Cálculo de días transcurridos entre dos últimos pedidos Quizas esto te ayude:
Código:
SELECT C.Nombre, DATEDIFF(DAY, PMax.FechaPedido, PMin.FechaPedido) AS Diferencia
FROM Clientes C
INNER JOIN (/*Esta sentencia me traerá el último pedido de cada cliente*/
SELECT MAX(FechaPedido) AS FechaPedido, IdCliente
FROM Pedidos P
GROUP BY P.IdCliente
) AS PMax
ON C.IdCliente = PMax.IdCiente
INNER JOIN (
SELECT MAX(FechaPedido) AS FechaPedido, IdCliente
FROM Pedidos P
WHERE NOT EXISTS(/*Esta sentencia hara que no me considere el registro
mayor y seleccione el segundo mayor, si es que existe*/
SELECT 1
FROM Pedidos PA
WHERE PA.IdCliente = P.IdCliente
AND MAX(PA.FechaPedido) = P.FechaPedido
GROUP BY PA.IdCliente
)
GROUP BY P.IdCliente
) AS PMin
ON C.IdCliente = PMax.IdCliente
No la probe, así que uizas tenga uno que otro errorcillo, además de que no se la estructura de tus tablas
Saludos!
__________________ Hicimos un pacto con Dios... El no desarrolla Sistemas y nosotros no hacemos milagros....
Última edición por Gabo77; 01/07/2007 a las 10:24
Razón: Jeje, despues de todo si tenia error.... :p
|