数据库某个字段以及里面的数据为:
state
0
1
2
3
1其中的0,1,2,3都是有它特定的含义的,比如0:未提交1:已提交 2:已审批 3:已审核现在要求select出来的结果如下:
state
未提交
已提交
已审批
已审核
已提交请教具体语句该怎么来实现?(可使用存储过程)

解决方案 »

  1.   

    select case when state = 0 then '未提交'
                when state = 1 then '已提交'
                when state = 2 then '已审批'
                when state = 3 then '已审核'
           end state 
    from tb
      

  2.   

    select 
      state= case state when 0 then '未提交'
                        when 1 then '已提交
                           when 2 then '已审批'
                        else '已审核' end
    from
      tb
      

  3.   

    --差了个'
    select 
      state= case state when 0 then '未提交'
                        when 1 then '已提交'
                           when 2 then '已审批'
                        else '已审核' end
    from
      tb
      

  4.   

    create table tb(state int)
    insert into tb values(0) 
    insert into tb values(1) 
    insert into tb values(2) 
    insert into tb values(3) 
    insert into tb values(1)
    goselect case when state = 0 then '未提交'
                when state = 1 then '已提交'
                when state = 2 then '已审批'
                when state = 3 then '已审核'
           end state 
    from tbdrop table tb/*
    state  
    ------ 
    未提交
    已提交
    已审批
    已审核
    已提交(所影响的行数为 5 行)
    */
      

  5.   


    select state=case 
    when state=0 then '未提交' 
    when state=1 then '已提交'
    when state=2 then '已审批' 
    when state=3 then '已审核'
    end 
    from tableName