Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 选择日期时间范围之间的记录_Sql_Sql Server_Datetime_Select_Between - Fatal编程技术网

Sql 选择日期时间范围之间的记录

Sql 选择日期时间范围之间的记录,sql,sql-server,datetime,select,between,Sql,Sql Server,Datetime,Select,Between,我在查询时遇到问题。我需要获取日期时间范围内的所有记录 我有以下资料: select * from db where date between '2017-05-02 11:35:31.877' and '2017-05-02 17:06:24.727' 我尝试了convert、cast、甚至=,但没有任何改变 编辑 我试过: select * from db where date between cast('2017-05-02 11:35:31.877' as datetime) and

我在查询时遇到问题。我需要获取日期时间范围内的所有记录

我有以下资料:

select *
from db
where date between '2017-05-02 11:35:31.877' and '2017-05-02 17:06:24.727'
我尝试了convert、cast、甚至=,但没有任何改变

编辑 我试过:

select *
from db
where date between cast('2017-05-02 11:35:31.877' as datetime) and cast('2017-05-02 17:06:24.727' as datetime)

select *
from db
where date between convert(datetime,'2017-05-02 11:35:31.877') and convert(datetime,'2017-05-02 17:06:24.727')

select *
from db
where date >= '2017-05-02 11:35:31.877' and  date <= '2017-05-02 17:06:24.727'
选择*
来自数据库
其中日期介于cast(日期时间为2017-05-02 11:35:31.877)和cast(日期时间为2017-05-02 17:06:24.727)之间
挑选*
来自数据库
其中转换(日期时间'2017-05-02 11:35:31.877')和转换(日期时间'2017-05-02 17:06:24.727')之间的日期
挑选*
来自数据库

其中日期>='2017-05-02 11:35:31.877'和日期您的原始脚本没有问题。它将返回您想要的值,假设您的
date
列是
datetime
数据类型,并且实际存储的值介于两个值之间

您可以从以下测试中看到这种情况:

declare @db table([date] datetime)
insert into @db values('2017-05-02 11:35:31.877')

select *
from @db
where date >= '2017-05-02 11:35:31.877' and  date <= '2017-05-02 17:06:24.727'

简单地说,你错过了一些东西。
您的列不是
datetime
数据类型,或者您没有任何与筛选匹配的数据。

我通过将类型更改为datetime2而不是datetime解决了此问题。不知道为什么。

或张贴您尝试过的内容、样本数据、输出和预期输出您能解释一下这个问题吗?您得到的行不正确吗?不够还是太多?“日期”列的数据类型是什么?查询似乎没有问题,我可以获取数据。可能在这个日期范围内没有记录。您是否有任何错误?当您遇到问题时,请尝试询问样本数据,并期望得到结果,以便更好地回答
date
-----------------------
2017-05-02 11:35:31.877