SQL Server 如何使用SQL日期时间字段获取某个时间之后的记录(不是按整小时)

gev0vcfq  于 2023-01-25  发布在  其他
关注(0)|答案(1)|浏览(307)

我使用的是SQL Server 2017。如果我有一个日期时间字段(systime),如何只获取在特定时间之后创建的记录,而完全忽略日期?该字段的示例如下:2015年5月20日18时23分49. 000秒
我想找到下午5:30或之后的任何记录,或者不晚于下午7:25的其他情况。我如何才能得到这两个结果中的任何一个?
下面的查询将给予基于整个小时的结果。

select *
from myTable
where datepart(hh, sysdate) > 17

以下是更多日期时间示例

2015-08-30 21:34:52.000
2015-09-30 20:20:34.000
2015-11-03 19:53:34.000
2015-12-08 22:49:58.000
2016-02-01 18:47:50.000
2016-02-05 18:41:19.000
2016-02-05 18:41:20.000
2hh7jdfx

2hh7jdfx1#

您可以检查时间部分是否在17:

Select * from myTable where convert(char(8),myDatetimeField,114) > '17:30:00';

Select * from myTable where convert(char(8), myDatetimeField, 114) <= '19:25:00';

相关问题