select (case when 09>convert(char(2), OperateDt,8)>18 then'白班' else '晚班' end) as OperateDt
from View_YBinBoxMain
select (case when convert(char(2), OperateDt,8)>9 and convert(char(2), OperateDt,8)<18 then'白班' else '晚班' end) as OperateDt
from View_YBinBoxMain
我测试过了,应该是这样的
select (case when 09>convert(char(2), OperateDt,8) and convert(char(2), OperateDt,8)>18 then'白班' else '晚班' end) as OperateDt
from View_YBinBoxMain
你试试这个
你要只查晚班的那要加限制条件啊,你有9点到6点之前的数据吗?
select * from View_YBinBoxMain where convert(char(2), OperateDt,8) < 09 and convert(char(2), OperateDt,8) > 18
再试试这个,没数据就自己加2条9点到18点之间的数据试试
select
(case when convert(char(2), GETDATE(),8)>9 and convert(char(2), GETDATE(),8)<18 then '白班' else '晚班' end) as aa
--这句是我的测试语句