SQL - 选择在给定日期之前找到的第一条记录

时间:2012-05-31 18:40:59

标签: sql

说我有一张桌子:

ID  DATE
1   2/1/12
2   3/1/12
3   1/1/12
4   4/1/12

如何选择从给定日期开始递减时找到的第一个日期。

示例:按日期查找4/1/12之前的最后一个条目。返回SQL ID 2的条目。

如果添加:

ID  DATE
5   3/2/12

比上面的示例将返回SQL ID 5的条目。

我如何在SQL中表示我需要什么?

2 个答案:

答案 0 :(得分:5)

Select top 1 ID, DATE
from table
where DATE < '4/1/12'
order by DATE DESC

答案 1 :(得分:0)

其他想法:(除了Gratzy之外)

选择日期小于目标日期的最大日期。

使用LAG功能。