我有一个计算事件持续时间的查询。但是,它不包括仍然“开放”的事件的当前时间。我试图找出一种方法将其添加到下面。它在 Azure SQL 12.0.2000.8 上运行。根据示例,事件 18 和 19 已关闭(最后一条记录具有 StatusID<>1),因此我当前的计算是正确的。但是,事件 20 正在进行中(最后一条记录的 StatusId=1)并且需要计算上次更新和现在之间的时间。
结构:
CREATE TABLE [dbo].[IncidentActions](
[Id] [INT] IDENTITY(1,1) NOT NULL,
[IncidentId] [INT] NOT NULL,
[ActionDate] [DATETIMEOFFSET](7) NOT NULL,
[Description] [NVARCHAR](MAX) NOT NULL,
[StatusId] [INT] NOT NULL
) ON [PRIMARY]
GO
INSERT INTO [dbo].[IncidentActions] VALUES
( 51, 18, N'2020-03-10T13:39:27.8621563+00:00', N'This is a demo of the app ops incident management portal', 1 ),
( 52, 18, N'2020-03-10T13:41:42.4306254+00:00', N'Superfast update we''re on it', 1 ),
( 53, 18, N'2020-03-10T13:42:19.0766735+00:00', N'Found a …Run Code Online (Sandbox Code Playgroud)