如何使用sql生成一个状态的列

evang_shot 2013-07-04 09:22:14
就是在显示的时候有一个列显示的是这行数据的状态,但是这个列并不存在数据库中,只有判断条件可以得出这个列是什么状态,请问这样的要求是否可行?
就像下面这样。
"需员工确认" == (jl=1 or (jl=2 and sj != 0)) and a.yg=0
"需领导确认" == jl=2 and sj = 0
"已领导确认" == jl = 2 and sj != 0
"已员工确认" == yg = 1

每个状态可以用其他字段表示出来,表名为A。
...全文
216 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
白脑哥 2013-07-04
  • 打赏
  • 举报
回复
学习了
  • 打赏
  • 举报
回复
引用 2 楼 errrry 的回复:
你好,这个可行,非常谢谢你。 再加上一个else '完毕',没有的就显示这个,呵呵
结贴给分
evang_shot 2013-07-04
  • 打赏
  • 举报
回复
你好,这个可行,非常谢谢你。 再加上一个else '完毕',没有的就显示这个,呵呵
引用 1 楼 HJ_daxian 的回复:
这样?

select jl,sj,yg,
       case when (jl=1 or (jl=2 and sj != 0)) and a.yg=0 then '需员工确认' 
            when jl=2 and sj = 0 then '需领导确认'
            when jl = 2 and sj != 0 then '已领导确认'
            when yg = 1 then '已员工确认' end sta
from A
  • 打赏
  • 举报
回复
这样?

select jl,sj,yg,
       case when (jl=1 or (jl=2 and sj != 0)) and a.yg=0 then '需员工确认' 
            when jl=2 and sj = 0 then '需领导确认'
            when jl = 2 and sj != 0 then '已领导确认'
            when yg = 1 then '已员工确认' end sta
from A

17,090

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧