Ssa*_*har 17 sql-server datetime date-range
在SQL中,我编写了一个SELECT语句,用于在两个日期之间获取数据between and
例如:
select *
from xxx
where dates between '2012-10-26' and '2012-10-27'
Run Code Online (Sandbox Code Playgroud)
但返回的行仅为第26行,而不是第26和第27行.
你能帮助我吗?谢谢.
ype*_*eᵀᴹ 14
正如其他人已经回答的那样,您可能有一个DATETIME(或其他变体)列而不是DATE数据类型.
这是适用于所有人的条件,包括DATE:
SELECT *
FROM xxx
WHERE dates >= '20121026'
AND dates < '20121028' --- one day after
--- it is converted to '2012-10-28 00:00:00.000'
;
Run Code Online (Sandbox Code Playgroud)
@Aaron Bertrand在博客中写道:魔鬼有什么BETWEEN共同之处?
Ode*_*ded 12
您需要更明确地添加开始和结束时间,直到毫秒:
select *
from xxx
where dates between '2012-10-26 00:00:00.000' and '2012-10-27 23:59:59.997'
Run Code Online (Sandbox Code Playgroud)
数据库可以很好地解释'2012-10-27'为'2012-10-27 00:00:00.000'.
| 归档时间: |
|
| 查看次数: |
112250 次 |
| 最近记录: |