-2
我需要您的帮助。我使用sql server 2012. 此查询是针对日志应用程序的。 我有一个这样的表格:T sql查询。确定日期列中的开始日期/结束日期
这是一个带有2个请求标识符的示例,这里是我想要获得的结果。
我已经完成了整个周末,仍然没有找到解决方案。 我尝试了SQL Server 2012的滞后和引导功能,但它不起作用。
IF OBJECT_ID('tempdb..#test', 'U') IS NOT NULL
DROP TABLE #test;
CREATE TABLE #test
(
requestid INT,
eventdate DATETIME,
eventname VARCHAR(20)
);
INSERT #test
(
requestid,
eventdate,
eventname
)
VALUES
(46444, '2016/08/08 10:20:33.000', 'OPENED'),
(46444, '2016/08/08 10:33:10.000', 'REVIEWED'),
(46444, '2016/08/08 11:09:55.000', 'OPENED'),
(46444, '2016/08/08 11:32:41.000', 'REVIEWED'),
(46444, '2016/08/08 11:39:01.000', 'CLOSED'),
(46444, '2016/08/08 15:00:04.000', 'OPENED'),
(46444, '2016/08/08 15:17:40.000', 'REVIEWED'),
(46444, '2016/08/08 15:29:36.000', 'OPENED'),
(46444, '2016/08/08 15:31:34.000', 'REVIEWED'),
(46444, '2016/08/08 15:36:37.000', 'CLOSED'),
(46444, '2016/08/08 17:04:27.000', 'OPENED'),
(46445, '2016/08/10 09:00:00.000', 'OPENED'),
(46445, '2016/08/11 01:33:10.000', 'REVIEWED'),
(46445, '2016/08/12 15:36:37.000', 'CLOSED');
select *
from #test
结果
requestid eventdate eventname CLOSEDDate CLOSEDEventname
46444 2016-08-08 10:33:10.000 REVIEWED 2016-08-08 11:39:01.000 CLOSED
46444 2016-08-08 15:17:40.000 REVIEWED 2016-08-08 15:36:37.000 CLOSED
46445 2016-08-11 01:33:10.000 REVIEWED 2016-08-12 15:36:37.000 CLOSED
请编辑您的问题并提供列的逻辑。 –