sql:status不迟于参数@date

时间:2011-06-08 15:09:10

标签: sql tsql

q1:给出一个表:ID,Date,Status。编写一个接收@ID @Date的SQL查询,并在该日期检索具有该id的人员的状态,或者如果该日期不存在则检索不晚于@date的最后状态。

我曾尝试为上述问题撰写查询。谢谢你的发言:

SELECT TOP (1) status from MyTable AS T
WHERE T.Date <= @date && T.id = @id
ORDER BY T.Date

谢谢你们

2 个答案:

答案 0 :(得分:3)

您需要使用AND代替&&,并按日期降序排序:

SELECT TOP 1 status 
from MyTable AS T 
WHERE T.Date <= @date 
    and T.id = @id 
ORDER BY T.Date desc

答案 1 :(得分:0)

从MyTable选择TOP TOP 1状态T WHERE T.Date&lt; = @date AND T.id = @id ORDER BY T.Date