select a.vc_username,b.vc_usergroupname,a.vcComptel,
( 20 - DATEDIFF(n,a.dt_AccessTime,getdate())) as leavetime ,'status' =case  when leaveTime>0
then '忙碌' else '在线' end 
 from merp_Pub_User as a left join merp_Pub_UserGroup as b on(a.vc_UserGroupID=b.c_ID)

解决方案 »

  1.   

    你这样写肯定不行,
    第一 leavetime是别名,不能在后面case中用
    还有你得'status'是什么???
      

  2.   

    select a.vc_username,b.vc_usergroupname,a.vcComptel,
    ( 20 - DATEDIFF(n,a.dt_AccessTime,getdate())) as leavetime ,'status' =(case 
    when leaveTime>0
    then '忙碌' 
    else then '在线' end )
     from merp_Pub_User as a left join merp_Pub_UserGroup as b on(a.vc_UserGroupID=b.c_ID) 你再使用一下,应该是case语法有问题造成的祝你好运!!!
    开心就好!!!
      

  3.   

    如下:
    select a.vc_username,b.vc_usergroupname,a.vcComptel,
    ( 20 - DATEDIFF(n,a.dt_AccessTime,getdate())) as leavetime ,
    (case  when ( 20 - DATEDIFF(n,a.dt_AccessTime,getdate()))>0
    then '忙碌' else '在线' end)  as status
     from merp_Pub_User as a left join merp_Pub_UserGroup as b on(a.vc_UserGroupID=b.c_ID)
      

  4.   

    select a.vc_username,b.vc_usergroupname,a.vcComptel,
    ( 20 - DATEDIFF(n,a.dt_AccessTime,getdate())) as leavetime ,case  when ( 20 - DATEDIFF(n,a.dt_AccessTime,getdate()))>0
    then '忙碌' else  '在线' end  as status
     from merp_Pub_User as a left join merp_Pub_UserGroup as b on(a.vc_UserGroupID=b.c_ID)