SQL - los N superiores de cada grupo

 
Vista:

los N superiores de cada grupo

Publicado por regane (2 intervenciones) el 17/01/2007 11:41:21
He estado mirando un poco por el foro pero no he encontrado nada, lamento si ya estaba contestado y no lo he visto.

Supongamos una tabla de facturas de clientes con

IdCabecera
Fecha
IdCliente
IdLiquido

Necesito sacar el último albaran de cada cliente.
Si utilizo TOP no lo hace por clientes
Si utilizo GROUP BY solo puedo sacar maximos, minimos etc pero no la línea entera correspondiente al último albaran.

Muchas gracias de antemano.

Un saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:los N superiores de cada grupo

Publicado por Liliana (426 intervenciones) el 17/01/2007 12:52:23
Hola,
Para resolver estos casos, es necesario primero obtener la fecha máxima de cada uno de tus clientes (resuelto en la subconsulta), para completar luego el resto del renglón:

SELECT T.IdCliente,
MaxFecha,
IdCabecera,
IdLiquido
FROM Tabla T
INNER JOIN
( SELECT IdCliente,
MaxFecha = MAX (Fecha)
FROM Tabla
GROUP BY IdCliente ) M
ON T.IdCliente = M.IdCliente AND
T.Fecha = M.MaxFecha

Saludos,
Liliana.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:los N superiores de cada grupo

Publicado por regane (2 intervenciones) el 18/01/2007 14:57:25
Muchas gracias, ha sido de mucha ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar