sql-server - 两个日期之间的日期,计数为零
问题描述
我想提取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 计数。这是为什么?
解决方案
当您尝试将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';
推荐阅读
- vuejs2 - NUXT Vuex 更改状态值返回存储状态错误
- javascript - 从useEffect动态呈现样式表?
- puppet - 如何在每个循环的 hiera_hash 中设置 puppet 类变量?
- firebase - Firebase 云消息传递的任何功能都需要 Firebase 数据库吗?
- javascript - Whatsapp 文本格式转换成 html 格式
- java - Hibernate JPA 中的自动截断
- jquery - 使用 Jquery 显示或隐藏 Elementor 部分
- kentico - Kentico - 在父转发器上显示兄弟文档名称
- amazon-web-services - 我可以在 Spring Boot/Cloud @SqsListener 上设置 AWS 凭证吗?(爪哇)
- python - Python - 打开受密码保护的 CSV 以读取/写入