consulta t-sql

26/05/2006 - 23:42 por anonimo | Informe spam
tengo la siguiente tabla con los siguientes registros...
tabla: historial
tablaid usuarioid fecha
1 1 11/12/2006 11:20:23
2 2 01/10/2006 09:15:20
3 3 10/09/2006 10:29:06
4 2 06/10/2006 02:34:52
5 3 03/08/2006 18:43:14
6 1 08/07/2006 01:54:00
7 1 01/09/2006 20:15:10
8 4 23/01/2006 11:25:35

lo que necesito es realizar una consulta en la cual me devuelva un registro
por cada usuario diferente de la tabla y en caso de existir mas de un
registro por usuario me devuelva el registro que contiene la fecha mas
reciente
tablaid usuarioid fecha
1 1 11/12/2006 11:20:23
3 3 10/09/2006 10:29:06
4 2 06/10/2006 02:34:52
8 4 23/01/2006 11:25:35


gracias
 

Leer las respuestas

#1 Alejandro Mesa
27/05/2006 - 00:29 | Informe spam
Trata,

select *
from t1
where not exists (
select *
from t1 as t2
where t2.usuarioid = t1.usuarioid and t2.fecha > t1.fecha
)
go


AMB

"anonimo" wrote:

tengo la siguiente tabla con los siguientes registros...
tabla: historial
tablaid usuarioid fecha
1 1 11/12/2006 11:20:23
2 2 01/10/2006 09:15:20
3 3 10/09/2006 10:29:06
4 2 06/10/2006 02:34:52
5 3 03/08/2006 18:43:14
6 1 08/07/2006 01:54:00
7 1 01/09/2006 20:15:10
8 4 23/01/2006 11:25:35

lo que necesito es realizar una consulta en la cual me devuelva un registro
por cada usuario diferente de la tabla y en caso de existir mas de un
registro por usuario me devuelva el registro que contiene la fecha mas
reciente
tablaid usuarioid fecha
1 1 11/12/2006 11:20:23
3 3 10/09/2006 10:29:06
4 2 06/10/2006 02:34:52
8 4 23/01/2006 11:25:35


gracias

Preguntas similares