我需要有关SQL查询的帮助。我想查询VersionInfo表以提取ActiveFlag = 1的最新记录。
最新记录可能没有activeflag = 1,我不想提取。
在下面的示例中,我希望提取(3456,02/20/2019,1)
示例:
GUID DATE Active Flag
------- ------- -----------
12345 01/15/2019 1
23455 06/28/2019 0
34564 02/20/2019 1
答案 0 :(得分:2)
您没有提到最新的“活动”日期有多行时该怎么办,以下查询将返回该日期的所有行:
SELECT GUID, Date
FROM YourTable
WHERE Date = (SELECT MAX(Date) FROM YourTable WHERE active_flag = 1)
HTH
答案 1 :(得分:0)
这是SQL Server特有的另一种方法
SELECT TOP 1
[GUID]
, [DATE]
, [Active Flag]
FROM
VersionInfo
WHERE
[Active Flag] = 1
ORDER BY
[Date] DESC
答案 2 :(得分:0)
某些数据库支持limit
select * from table_name where active_Flag=1
order by date desc limit 1