期间内多个值之一中的一个值

时间:2019-01-23 10:47:03

标签: sql-server tsql datetime

我正在尝试寻找一种方法来查找十二小时内的多个条目,例如00:00:00-11:59:59,其中一个值位于该范围内的另一个时间段内十二个小时(例如11:00:00和11:59:59之间)

02:43:11 11:17:00

如有必要,两次时间都可以在11:00:00和11:59:59之间。

在十二小时内可以有一个以上的条目,但我希望找到在11:00:00-11:59:59范围内至少有两个条目,并且至少一个条目需要包含在其中。 / p>

希望这很清楚

1 个答案:

答案 0 :(得分:0)

类似这样的东西:

SELECT [entry_id]
FROM [my_table]
GROUP BY [entry_id]
HAVING SUM
       (
            CASE WHEN [Date] >= '00:00:00' AND [Date] <= '11:59:59' THEN 1 ELSE 0 END
       ) >= 2
       AND
       SUM
       (
            CASE WHEN [Date] >= '11:00:00' AND [Date] <= '11:59:59' THEN 1 ELSE 0 END
       ) >= 1