Select Most Recent States From History Table Select Most Recent States From History Table sql sql

Select Most Recent States From History Table


SQL Server 2005 (onwards):

WITH MostRecentRows AS(    SELECT ID, Name, Data,    ROW_NUMBER() OVER (PARTITION BY Name ORDER BY TimeStamp DESC) AS 'RowNumber'    FROM MySchema.MyTable) SELECT * FROM MostRecentRows WHERE RowNumber = 1


Assuming there are no duplicate timestamps per name, something like this should work:

SELECT ID, Name, Timestamp, DataFROM test AS oWHERE o.Timestamp = (SELECT MAX(Timestamp)                     FROM test as i                     WHERE i.name = o.name)


SQL Server 2000:

SELECT  ID, Name, Timestamp, DataFROM  DataTable  INNER JOIN  (     SELECT ID, MAX(Timestamp) Timestamp FROM DataTable GROUP BY ID  ) latest ON     DataTable.ID = Latest.ID AND     DataTable.Timestamp = Latest.Timestamp