【发布时间】:2020-12-18 01:45:34
【问题描述】:
我有一个表格,其中有一列“已创建”作为日期时间。
我正在尝试查询 Created 值的时间是否介于两次之间。
第一行的 Created datetime 是“2013-07-01 00:00:00.000”(午夜),我正在尝试查询时间在晚上 11 点到早上 7 点之间的项目。
select *
from MyTable
where CAST(Created as time) between '23:00:00' and '06:59:59'
但是没有返回任何结果。
我需要将我的时间转换为日期时间吗?
【问题讨论】:
-
类似的问题和一个例子[这里][1] [1]:stackoverflow.com/questions/5125076/…
-
是的,在晚上 11 点到第二天早上 7 点之间
-
其实不必在两天之间。我有一张员工轮班表。班次 3 的开始时间为 23:00:00(晚上 11 点),结束时间为 06:59:59。这两个都存储为“时间”数据类型。
-
@t-clausen.dk:同一天的 23 点到 7 点之间没有多大意义,因为第一次晚于第二次,结果集总是空的。
-
@TimSchmelter 我不想为此争论,所以我删除了我的帖子。我的逻辑告诉我,这并不重要。在这种情况下,我是对的,但是我看到您的问题有意义的其他场景