【发布时间】:2018-09-21 01:40:17
【问题描述】:
我正在尝试构建一个 SQL 查询以在我的表中返回最新更新的票号。每次工单有更新时,都会在表中创建另一条记录。每条记录的 ID 字段都是唯一的。
我尝试在子查询中使用 SELECT DISTINCT 语句和 MAX 函数,但无法获得所需的输出。
表格
ID Ticket_Number Priority Assignee Last_Updated_Date
21100 2 Low Jerry 2018-9-13 15:10:01
21105 2 Medium Chris 2018-9-15 23:10:08
21520 3 High James, Alan 2018-9-14 08:10:11
22000 4 Low Chris 2018-9-14 20:10:22
22150 4 High Chris, Jerry 2018-9-16 11:00:00
23120 6 Low Albert 2018-9-17 12:10:06
23220 7 High Steve 2018-9-18 10:10:02
期望的输出
ID Ticket_Number Priority Assignee Last_Updated_Date
21105 2 Medium Chris 2018-9-15 23:10:08
21520 3 High James, Alan 2018-9-14 08:10:11
22150 4 High Chris, Jerry 2018-9-16 11:00:00
23120 6 Low Albert 2018-9-17 12:10:06
23220 7 High Steve 2018-9-18 10:10:02
【问题讨论】:
-
您使用的是哪个 DBMS?
-
如果您的 RDBMS 是 MS SQL Server,您可以使用 LAG 和 LEAD 或 ROW_NUMBER 等分析函数。
-
这是 SQL Server
标签: sql sql-server tsql