Try this?
SELECT
[ID]
, [Date List]
, [Name]
, [No]
FROM
(
SELECT
*
, ROW_NUMBER() OVER ( PARTITION BY [ID] ORDER BY [Date List] DESC) AS [SortID]
FROM
<TheTable>
)
AS s
WHERE
[SortID] = 1
Transact Charlie
Msg 3903.. The ROLLBACK TRANSACTION request has no corresponding BEGIN TRANSACTION.
http://nosqlsolution.blogspot.co.uk/