oracle 10g PL/SQL中列转行? 要具体的SQL语句才给分,不要decode函数
2个回答
展开全部
select sum(decode(A,'第一天',B)) 第一天,sum(decode(A,'第二天',B)) 第二天,
sum(decode(A,'第三天',B)) 第三天,sum(decode(A,'第四天',B)) 第四天,
sum(decode(A,'第五天',B)) 第五天 from 表;
sum(decode(A,'第三天',B)) 第三天,sum(decode(A,'第四天',B)) 第四天,
sum(decode(A,'第五天',B)) 第五天 from 表;
追问
注意题目不要DECODE函数,别的方法有吗?比如WM_CONCAT什么的
追答
把decode改成case就可以了。
select sum(CASE WHEN A='第一天' THEN B END) 第一天,
sum(CASE WHEN A='第二天' THEN B END) 第二天,
sum(CASE WHEN A='第三天' THEN B END) 第三天,
sum(CASE WHEN A='第四天' THEN B END) 第四天,
sum(CASE WHEN A='第五天' THEN B END) 第五天 from 表;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询