![]() |
1
1
我将使用公共表表达式(CTE)。这提供了很多可能性,比如:
|
![]() |
2
4
单程
|
![]() |
3
1
既然您使用的是Microsoft SQL Server 2008,那么我建议您 Common Table Expressions 和 the OVER clause 完成将结果分组 身份证件 ,并返回每组中的第一行(按 PID )布利克的回答显示了一种方法。 (顺便说一下,同样的基本方法对于更高效的分页也非常有用。) 对于“标准”SQL,没有一种非常好的方法可以做到这一点。sqlmanace答案中显示的方法只能在数据库中使用,在数据库中可以将子查询用作表。例如,这是在SQL Server 2000中实现这一点的一种方法,但可能不适用于每个主流RDBMS。 |
![]() |
Jack Skeletron · T-SQL三表求和 7 年前 |
![]() |
CSK · 列出sql server中存储过程中的存储过程 7 年前 |
![]() |
DRT · 从文本字段中提取多个日期 7 年前 |
![]() |
ihatemash · 确定可以合并哪些行的SQL查询 7 年前 |
![]() |
Shawn · 使用WinZip命令行的SQL Server作业 7 年前 |