'>' 附近有语法错误。哪位大神能帮我看看,为什么我这错了,拜托拜托

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
--这句是我的测试语句