我有一张桌子:
Date ColumnA ColumnB
2009-12-29 "abc" "abc"
2009-12-29 "abc" "abc"
2009-12-29 "abc" "abc"
2009-12-28 "abc" "abc"
2009-12-28 "abc" "abc"
2009-12-28 "abc" "abc"
,,,
,,,
我想在Microsoft SQL中编写一个查询,该查询返回表中最新可用日期的所有行。所以在上面的例子中,它返回日期为12-12-29的所有行。
答案 0 :(得分:9)
SELECT Date, ColumnA, ColumnB
FROM TableName
WHERE Date =
(SELECT max(Date) FROM TableName)
答案 1 :(得分:2)
SELECT TOP 1 WITH TIES *
FROM mytable
ORDER BY
date DESC
这甚至适用于复合最大值(例如,(date, othercolumn)
,无法使用普通MAX
检索
您可能希望在我的博客中阅读以下几种方法来阅读这些文章: