从 SQL Server 表中选择具有最大日期的不同行?

sch*_*ner 2 sql t-sql sql-server distinct

我需要获取表的一组不同记录以及所有重复项的最大日期。

前任:

Select distinct a,b,c, Max(OrderDate) as maxDate
From ABC
Group By a,b,c
Run Code Online (Sandbox Code Playgroud)

问题是我得到每个不同日期的记录。

前任:

aaa, bbb, ccc, Jan 1 2009
aaa, bbb, ccc, Jan 28 2009
Run Code Online (Sandbox Code Playgroud)

我怎样才能限制这个所以我最终只有:

aaa, bbb, ccc Jan 28 2009
Run Code Online (Sandbox Code Playgroud)

我认为问题在于团队和团队相处得不好。

编辑:找到导致问题的问题,查询结果符合预期,而不是上面的结果。

Ada*_*son 5

您的查询或示例结果有问题,因为您所描述的内容应该是不可能的。一些实际的 SQL 和实际结果怎么样?

无论如何,您不需要distinct那里,因为您选择的只是三个分组的列和一个聚合,因此根据定义,您最终将得到所有不同的行。我从未尝试过这个,所以在使用这两者时可能会出现一些不当行为。您尝试过删除吗distinct?是什么原因让你把它放在那里?