如何将多个case when的结果输出到同一列?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将多个case when的结果输出到同一列?相关的知识,希望对你有一定的参考价值。
select CTN_TYPE1 ,CTN_COUNT1,CTN_TYPE2 ,CTN_COUNT2,CTN_TYPE3 ,CTN_COUNT3,CTN_TYPE4 ,CTN_COUNT4,
CASE
when nvl(CTN_TYPE1,'1')!='1' and nvl(CTN_COUNT1,0)!=0 then '['||CTN_TYPE1 ||'x'||CTN_COUNT1||']'
when nvl(CTN_TYPE1,'1')='1' or nvl(CTN_COUNT1,0)=0 then ' kong1'
else 'others'
end
CASE
when nvl(CTN_TYPE2,'1')!='1' and nvl(CTN_COUNT2,0)!=0 then '['||CTN_TYPE2 ||'x'||CTN_COUNT2||']'
when nvl(CTN_TYPE2,'1')='1' or nvl(CTN_COUNT2,0)=0 then ' kong2'
else 'others'
end
CASE
when nvl(CTN_TYPE3,'1')!='1' and nvl(CTN_COUNT3,0)!=0 then '['||CTN_TYPE3 ||'x'||CTN_COUNT3||']'
when nvl(CTN_TYPE3,'1')='1' or nvl(CTN_COUNT3,0)=0 then ' kong3'
else 'others'
end
CASE
when nvl(CTN_TYPE4,'1')!='1' and nvl(CTN_COUNT4,0)!=0 then '['||CTN_TYPE4 ||'x'||CTN_COUNT4||']'
when nvl(CTN_TYPE4,'1')='1' or nvl(CTN_COUNT4,0)=0 then ' kong4'
else 'others'
end
as ddddd from HW_INFO;
代码如上,哪里错了,不能输出到同一个字段dddddd中
oracle中的sql语言
忘记说了,在oracle中 sql语言
myysql case when多个参数结果
-- 查看所有学生的姓名班级,如果班级为1表示一年级,2表示二年级,3表示三年级
select
s.StudentName,
CASE
WHEN s.GradeId = 1 THEN '一年级'
WHEN s.GradeId = 2 THEN '二年级'
WHEN s.GradeId = 3 THEN '三年级'
ELSE '其他' END
from student s
以上是关于如何将多个case when的结果输出到同一列?的主要内容,如果未能解决你的问题,请参考以下文章