我想搜索给定日期之间的数据。我能够获得介于两者之间的结果,但其中不包括介于语句之间开始和结束的那一天。
我尝试仅在使用之间切换日期,例如增加或减少一天,但是必须有另一种方式。
SQL:
WHERE "Date" Between '09/02/2019' AND '09/06/2019'
AND (sf.TemplateName = 'Nassco Lacp')
AND (sf.ProjectName = 'Crossbore Safety Program')
AND (sf.WorkOrderNumber LIKE '%2715%I1%')
我应该获得那几天之间的所有数据,包括第二天和第六天完成的工作,但是由于某种原因,我没有在第六天完成工作。帮助!
答案 0 :(得分:1)
请勿在日期中使用between
!时间部分可能会导致问题。相反:
where date >= '2019-09-02' and
date < '2019-09-07' and -- note this is one day later
. . .
大多数数据库都了解YYYY-MM-DD的日期常量。
答案 1 :(得分:0)
以我的经验,当Account
字段是时间戳记数据类型时,会发生这种情况。发生的是,某个特定的日期(例如Key('Account', 5629499534213120, 'Article', 5946158883012608, 'Message', 5663034638860288)
被解释为Key('Account', 5629499534213120, 'Article', 5946158883012608)
,因此之前的任何值都被排除。
尝试(ORACLE DBMS):
Date
尝试(SQL Server):
09/02/2019