如何计算从一行列到下一行不同列的 DateDiff

问题描述 投票:0回答:1

我想使用 DateDiff 从第 1 行第 2 列、第 2 行第 1 列开始

CREATE TABLE Surgery 
(
    AccountNumber varchar(20),
    CaseNumber varchar(6),
    SurgDate DATETIME,
    ORRoom varchar(10),
    Surgeon varchar(50),
    InRoomTime TIME(3),
    OutRoomTime TIME(3)
)

INSERT INTO Surgery 
VALUES
('11111', '144995', '2024-07-19 00:00:00.000', 'OR06', 'SOK', '07:29', '08:30'),
('11111', '145017', '2024-07-19 00:00:00.000', 'OR06', 'SOK', '09:00', '10:18'),
('11111', '145028', '2024-07-19 00:00:00.000', 'OR06', 'SOK', '11:03', '13:00'),
('11111', '145027', '2024-07-19 00:00:00.000', 'OR06', 'SOK', '13:42', '16:20')

--SELECT * FROM Surgery

SELECT 
    InRoomTime,  
    (SELECT OutRoomTime
     FROM SURGERY AS table2
     WHERE table2.SurgDate = SurgDate AND table2.OutRoomTime < InRoomTime 
     --ORDER BY OutRoomTime DESC
    ) AS TOT
FROM SURGERY

我想看到的是:

111411  144995  2024-07-19 00:00:00.000 OR06    SOK 07:29:00.000    08:30:00.000 Time Difference mins
11111   145017  2024-07-19 00:00:00.000 OR06    SOK 09:00:00.000    10:18:00.000 30
11111   145028  2024-07-19 00:00:00.000 OR06    SOK 11:03:00.000    13:00:00.000 45
11111   145027  2024-07-19 00:00:00.000 OR06    SOK 13:42:00.000    16:20:00.000 158
sql
1个回答
0
投票

你的问题对我来说不是很清楚。 为什么值为 158? 你是说42吗?

© www.soinside.com 2019 - 2024. All rights reserved.