近日,要查询一张表中相同ID的最后一条数据,数据表内容如下:
ID | UpdateDate |
1 | 2015-10-08 |
2 | 2015-12-09 |
1 | 2015-11-12 |
3 | 2014-09-21 |
需要的结果是这样的:
ID | UpdateDate |
1 | 2015-11-12 |
2 | 2015-12-09 |
3 | 2014-09-21 |
SQL语句应该这样写:
SELECT * FROM [TableName] a WHERE EXISTS(
select * FROM (
SELECT ID,max(UpdateDate) as UpdateDate from [TableName] GROUP BY ID) x
WHERE x.Loan_ID=a.WHERE AND x.RenewLoansEndDate=a.UpdateDate)