obtener los resultados más recientes de cada cliente

26/05/2009 - 14:57 por DT | Informe spam
Hola a todos
Tengo una tabla con los siguientes datos:

CodCli Fecha_actualizacion Tipo
1 01/11/2009 A
1 01/01/2009 E
2 01/21/2009 A
2 01/31/2009 D
3 02/01/2009 A
3 03/01/2009 B
4 01/11/2009 C
4 01/21/2009 A

Necesito obtener los resultados más recientes de cada cliente así:
CodCli Fecha_actualizacion Tipo
1 01/11/2009 A
2 01/31/2009 D
3 03/01/2009 B
4 01/21/2009 A

Muchas gracias de antemano!
SQL Server 2008
 

Leer las respuestas

#1 Alejandro Mesa
26/05/2009 - 15:05 | Informe spam
DT,

Hechale un vistazo a las funciones de ranking como rank, dense_rank, y
row_number, en los BOL.

with r_set
as
(
select
CodCli, Fecha_actualizacion, Tipo,
row_number() over(partition by CodCli order by Fecha_actualizacion DESC)
as rn
from
tu_tabla
)
select
from r_set
where rn = 1;
go


AMB

"DT" wrote:

Hola a todos
Tengo una tabla con los siguientes datos:

CodCli Fecha_actualizacion Tipo
1 01/11/2009 A
1 01/01/2009 E
2 01/21/2009 A
2 01/31/2009 D
3 02/01/2009 A
3 03/01/2009 B
4 01/11/2009 C
4 01/21/2009 A

Necesito obtener los resultados más recientes de cada cliente así:
CodCli Fecha_actualizacion Tipo
1 01/11/2009 A
2 01/31/2009 D
3 03/01/2009 B
4 01/21/2009 A

Muchas gracias de antemano!
SQL Server 2008


Preguntas similares