嵌套 SELECT 作为字段列表的一部分

Nested SELECT as part of field listing

我有一个视图列出了特定阻尼器打开的时间(在制造环境中)。我仅限于查询此视图。基本上,数据如下所示:

dateTime      value
9/1/15 0:01      1
9/1/15 0:10      0
9/1/15 1:10      1
9/1/15 2:00     NULL
9/1/15 3:01      0

我需要找到风门每次打开的时间 (1) 并确定它何时关闭 (0)。我们假设打开的空值(与 1 相同)。

查找值 = 1 以及 1 之后的下一个 0 的每个条目的最佳方法是什么?

它是一个 Historian DB,但它基本上在几乎所有方面都模仿 SQL。

这是最终有效的代码 - 供后代使用。 :)

SELECT DateTime, Value, 
(SELECT TOP (1) hClose.dateTime FROM history hClose WHERE
hClose.dateTime > history.DateTime 
AND hClose.TagName = 'TAGNAMEHERE' 
AND hClose.Value < 10 
AND wwRetrievalMode = 'average'
AND wwResolution = 600000
ORDER BY dateTime) as closeTime
FROM history 
WHERE dateTime BETWEEN '9/1/15 00:00' AND '10/1/15 0:00'
AND tagName = 'TAGNAMEHERE'
AND (VALUE > 10 OR VALUE IS NULL)
AND wwRetrievalMode = 'average'
AND wwResolution = 60000