ID 值(只有0或1) 正常级别 告警时级别 值为1时名称 值为0时名称
1 0 4 1 报警 正常
2 0 1 1 报警 正常
3 1 4 1 报警 正常
4 1 4 1 正常 报警
5 0 4 1 正常 报警
条件:
值里面只有0或1,当值为0时,参照后面的:“值为1时名称”,“值为0时名称”,选择级别
例如:ID=1时,值为0,为正常,正常级别为:4
ID=3时,值为1,为报警,报警级别为:1
ID=5时,值为0,为报警,报警级别为:1想要的结果:
ID 值(只有0或1) 级别
1 0 4
2 0 1
3 1 1
4 1 4
5 0 1希望大神帮帮忙,提供思路都行
1 0 4 1 报警 正常
2 0 1 1 报警 正常
3 1 4 1 报警 正常
4 1 4 1 正常 报警
5 0 4 1 正常 报警
条件:
值里面只有0或1,当值为0时,参照后面的:“值为1时名称”,“值为0时名称”,选择级别
例如:ID=1时,值为0,为正常,正常级别为:4
ID=3时,值为1,为报警,报警级别为:1
ID=5时,值为0,为报警,报警级别为:1想要的结果:
ID 值(只有0或1) 级别
1 0 4
2 0 1
3 1 1
4 1 4
5 0 1希望大神帮帮忙,提供思路都行
with tb as
(
select 1 ID,0 值,4 正常级别,1 告警时级别,'报警' 值为1时名称,'正常' 值为0时名称 from dual union
select 2,0,1,1,'报警','正常' from dual union
select 3,1,4,1,'报警','正常' from dual union
select 4,1,4,1,'正常','报警' from dual union
select 5,0,4,1,'正常','报警' from dual )select id,值,
case (case 值 when 0 then 值为0时名称 else 值为1时名称 end) when '正常' then 正常级别 else 告警时级别 end 级别
from tb