我有一个表,显示员工生产的单位数量。它还具有交易时间。
是否可以以这样的方式显示数据,即当当前时间在上午7点至下午3点之间,它应该只显示在该时间段内进行的交易,然后当前时间是3pm仅在3-11 pm之间显示交易。
样本数据
units | name | TIME
-------------------------
10 | aa | 08:33:22
26 | bb | 10:33:22
36 | cc | 16:33:22
11 | dd | 18:33:22
现在,如果当前时间是13:00:00,我希望在上午7点至下午3点之间的所有转移,这将只是第一个2。但是当时间为15:00:00时,它应该自动显示下午3点-11pm
您可以使用where
:
where (datepart(hour, getdate()) between 7 and 14 and
datepart(hour, transactiondatetime) between 7 and 14
) or
(datepart(hour, getdate()) not between 7 and 14 and
datepart(hour, transactiondatetime) between 11 and 22
)