洞妖洞妖呼叫洞拐
2017-08-02 06:14
采纳率: 76.9%
浏览 2.0k

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

select (case when 09>convert(char(2), OperateDt,8)>18 then'白班' else '晚班' end) as OperateDt
from View_YBinBoxMain 图片说明

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • XianRenShan 2017-08-02 06:35
    已采纳

    select (case when convert(char(2), OperateDt,8)>9 and convert(char(2), OperateDt,8)<18 then'白班' else '晚班' end) as OperateDt
    from View_YBinBoxMain
    我测试过了,应该是这样的

    打赏 评论
  • qq_641843909 2017-08-02 06:19

    select (case when 09>convert(char(2), OperateDt,8) and convert(char(2), OperateDt,8)>18 then'白班' else '晚班' end) as OperateDt
    from View_YBinBoxMain

    你试试这个

    打赏 评论
  • qq_641843909 2017-08-02 06:34

    你要只查晚班的那要加限制条件啊,你有9点到6点之前的数据吗?

    select * from View_YBinBoxMain where convert(char(2), OperateDt,8) < 09 and convert(char(2), OperateDt,8) > 18

    再试试这个,没数据就自己加2条9点到18点之间的数据试试

    打赏 评论
  • XianRenShan 2017-08-02 06:36

    select
    (case when convert(char(2), GETDATE(),8)>9 and convert(char(2), GETDATE(),8)<18 then '白班' else '晚班' end) as aa
    --这句是我的测试语句

    打赏 评论

相关推荐 更多相似问题