Oracle中如何进行pivot和unpivot之间的转换

分类:编程技术 时间:2024-02-20 16:10 浏览:0 评论:0
0
Oracle中如何进行pivot和unpivot之间的转换?相信很多没有经验的人都一头雾水。本文总结了问题的原因和解决方案。通过这篇文章,希望你能解决这个问题。

今日问题解答汇总

表格:成绩(学号、语文、数学、英语、化学)

学号语文数学英语化学
1及格优秀优秀未通过
2优秀通过通过< /td> td>优秀

实现方法之一:

select * from (
with tt as (select * from Score unpivot (cj for kc in ("语文","数学","英语","化学")))

选择“Student Number",kc,

(当 cj>=80 时则为“优秀”,当 cj>=60 时为“通过”,否则为“失败”结束) cj

--解码(sign(cj-80),0,'优秀',1,'优秀',-1,解码(sign(cj-60),0,'通过',1,'通过','失败')) cj

from tt)

pivot (max(cj) for kc in ('Chinese' Chinese,'Mathematics' Mathematics,'English' English,'Chemistry' Chemistry))

读完上面的内容你就知道了Oracle中如何进行pivot和unpivot了,他们之间有没有办法进行转换呢?如果你想学习更多技能或者想了解更多相关知识内容请关注行业资讯频道,感谢您的阅读!

1. 本站所有资源来源于用户上传或网络,仅作为参考研究使用,如有侵权请邮件联系站长!
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 编程技术 > Oracle中如何进行pivot和unpivot之间的转换

用户评论