我有SQL查询简单的问题..我想搜索字段,其中日期开始和结束于特定的日期和时间。SQL - 与日期字符字段 - 如何在两个日期之间搜索
字段被定义为CHAR并且具有结构:DD.MM.YYYY hh:mm:ss并且我无法更改它。
我试图声明一些变量,并通过此搜索,也尝试通过转换。
这是我尝试和没有工作:
SELECT date FROM table WHERE date BETWEEN '1.01.2017 00:00:00' AND '1.02.2017 23:59:59'
SELECT date FROM table WHERE date >= '1.01.2017 00:00:00' AND date <= '1.02.2017 00:00:00'
SELECT date FROM table WHERE date >= Convert(DATETIME, '1.01.2017', 104) AND date <= Convert(DATETIME, '1.02.2017', 104)
总是这个查询我得到的所有日期,而不是该我问了。
您的第三个查询几乎是正确的,您只需将日期列转换为'datetime'数据类型即可。 – HoneyBadger
最后一个查询中的'104'是什么? 'CONVERT'的参数是'(expression,type)'。 – Barmar
存储日期作为日期 – Strawberry