Ela*_*Van 0 sql t-sql sql-server date sql-order-by
首先,我想按日期列 asc 排序。然后按名称列分组。例如,
Name date(mmddyyyy)
A. 03/10/2020
B. 03/09/2020
C. 03/13/2020
B. 03/11/2020
A. 03/12/2020
C. 03/12/2020
Run Code Online (Sandbox Code Playgroud)
所需的输出,
Name Date
B. 03/09/2020
B. 03/11/2020
A. 03/10/2020
A. 03/12/2020
C. 03/12/2020
C. 03/13/2020
Run Code Online (Sandbox Code Playgroud)
我想通过 SQL 查询来实现这一点。是否可以?
您可以使用窗口函数:
order by
min(date) over(partition by name),
date
Run Code Online (Sandbox Code Playgroud)
如果存在绑定组的可能性,那么您可以添加name作为第二个排序标准以避免混合组:
order by
min(date) over(partition by name),
name,
date
Run Code Online (Sandbox Code Playgroud)