我使用的SQL是由第三方提供的数据库连接(我知道这很混乱),所以有些功能不能像 "完整 "的SQL那样使用。总之,这就是我想做的事情。
select
,s.receiptnumber as ReceiptNumber
,s.salesdatetime as Date
,'Sales Outside of Hours' as Type
from vwsalesreceiptwithdetails s
where s.isarchived='false'
and GetDate() and (datepart(hh,s.SalesdateTime) >=22 OR datepart(hh,s.SalesdateTime)<7)
我遇到的问题是:
and GetDate() and (datepart(hh,s.SalesdateTime) >=22 OR datepart(hh,s.SalesdateTime)<7)
我们想把发生在晚上10: 05到第二天早上6: 55之间的销售收据拉进来 因为我们想增加一个缓冲时间。然而,我不知道在SQL中是否可以或如何做到这一点。如果有人能提供一些指导,我将非常感激。
试试这个。
WHERE (CAST(s.SalesDateTime AS TIME) NOT BETWEEN '06:55' AND '22:05')