首页 > 解决方案 > 两个日期之间的日期,计数为零

问题描述

我想提取ActionOwnerDate 两个特定日期之间的记录,因此我这样做:

SELECT count(*)
FROM T_Warehouse
WHERE CAST(ActionOwnerDate As DATE) BETWEEN CAST('12.01.2020 11:21:08' As Date) AND CAST('12.10.2020 11:21:08' As Date);

然而,数据是可用的,应该显示:

数据可用

我得到的是 0 计数。这是为什么?

标签: sql-servertsql

解决方案


当您尝试将12.01.2020 11:21:08转换为日期时,它转换为2020 年 12 月 1 日12.10.2020 11:21:08转换为2020 年 12 月 10 日,并且如您所示,您的表格没有包含数据在这些日期之间。

如果您想检索 2020 年 1 月 12 日至 2020 年 10 月 12 日之间的数据,使用以下提及的查询:- 使用DD-MMM-YYYY以便更好地理解。

SELECT count(1) FROM T_Warehouse WHERE CAST(ActionOwnerDate As DATE) BETWEEN '12-Jan-2020' AND '12-Oct-2020';

推荐阅读