查询SQL Server日期时间条件



我有一个datetime存储在SQL Server中,如'2021-10-12 18:46:31.047'和'2021-10-225 23:54:08.667'在一行。

如何使用日期而不是小时来查询datetime

WHERE str_day = '2021-10-23' AND end_day = '2021-10-24'

帮助请

使用日期边界:

WHERE str_day >= '20211023'
AND str_day < '20211024'
AND end_day >= '20211024'
AND end_day < '20211025'

如果列str_dayend_day的时间为DATETIME(或DATETIME2(n)),则可以使用如下内容:

WHERE CAST(str_day AS DATE) = '2021-10-23' 
AND CAST(end_day AS DATE) = '2021-10-24'

DATE是仅日期(没有时间部分)数据类型-如果您的时间部分永远不需要,那么从一开始就将这些内容存储为DATE可能会很有用…

使用这个;这将适用于许多场景和类型

WHERE str_day = '23 OCT 2021' 
AND end_day = '24 OCT 2021'

最新更新