Seleccionar ultimos registros de cada registro

23/11/2009 - 13:50 por Fran | Informe spam
Buenas tardes

Tengo una select en una base de datos de esta forma:

SELECT IDPaciente, fecha, observaciones FROM dbo.observaciones WHERE
fecha>= CONVERT(datetime, convert(varchar(10), GETDATE() ,120), 120)
ORDER BY fecha DESC"

y una tabla con la siguiente información

IDPaciente Fecha Observaciones
1 14/05/07 observaciones..
1 14/05/07 observaciones 2
2 15/06/07 observaciones
4 16/06/07 ...
3 16/06/07-
2 16/07/09
1 17/07/09

Lo que quiero es que solamente muestre el último registro de cada
paciente, quedando de esta forma

1 17/07/09
2 16/07/09
3 16/06/07
4 16/06/07

cómo podría hacerlo?

Muchas gracias
 

Leer las respuestas

#1 Maxi Accotto
23/11/2009 - 15:26 | Informe spam
Hola, fijate algo como esto:

SELECT orderid, orderdate, empid, custid
FROM Sales.Orders
WHERE orderid = (SELECT MAX(O.orderid)
FROM Sales.Orders AS O);




Maxi Accotto
MVP en SQL Server
http://blog.maxiaccotto.com

"Fran" wrote in message
news:
Buenas tardes

Tengo una select en una base de datos de esta forma:

SELECT IDPaciente, fecha, observaciones FROM dbo.observaciones WHERE
fecha>= CONVERT(datetime, convert(varchar(10), GETDATE() ,120), 120)
ORDER BY fecha DESC"

y una tabla con la siguiente información

IDPaciente Fecha Observaciones
1 14/05/07 observaciones..
1 14/05/07 observaciones 2
2 15/06/07 observaciones
4 16/06/07 ...
3 16/06/07-
2 16/07/09
1 17/07/09

Lo que quiero es que solamente muestre el último registro de cada
paciente, quedando de esta forma

1 17/07/09
2 16/07/09
3 16/06/07
4 16/06/07

cómo podría hacerlo?

Muchas gracias


Preguntas similares