根据日期选择最近的记录

时间:2013-11-27 15:54:47

标签: sql sql-server

我正在尝试创建一个select查询,该查询根据日期从表中返回最新记录。基本上哪一行的[Date]字段最接近当前日期。

示例数据:

    ID       Content         Date
--------------------------------------------
1   1050    Test Values    2013-11-27 10:46:24.900
2   1051    Test Test      2013-11-27 10:47:43.150
3   1057    Test Testx2    2013-11-27 10:48:22.820

我想只返回这些值

    ID       Content         Date
--------------------------------------------
1   1057    Test Testx2    2013-11-27 10:48:22.820

谢谢!

4 个答案:

答案 0 :(得分:3)

您可以尝试以下查询:

SELECT TOP 1 *
FROM Table
ORDER BY [Date] DESC

答案 1 :(得分:2)

或者,如果您希望查询在任何DBMS(不仅仅是SQL Server)上运行,请使用ANSI SQL

select * from t order by Date desc limit 1

select * from t where Date = (select max(Date) from t)

答案 2 :(得分:0)

SELECT TOP 1 * FROM Table ORDER BY [Date] DESC

从最高日期到最低日期排序后,返回第一条记录中的所有字段。基本上这会返回最新的条目。

答案 3 :(得分:0)

SELECT TOP 1  ID,Content,Date FROM <TABLE_NAME> ORDER BY Date