阅读量:5
在Oracle中,可以使用PIVOT和UNPIVOT操作来实现行转列和列转行。
- 行转列(PIVOT):将表中的行数据转换为列数据,可以使用PIVOT操作来实现。例如,有一个表包含了学生的姓名和成绩信息:
SELECT *
FROM (
SELECT student_name, subject, score
FROM student_scores
)
PIVOT
(
MAX(score)
FOR subject IN ('Math', 'English', 'Science')
);
在上面的例子中,将学生的姓名作为行数据,将科目(Math,English,Science)作为列数据。
- 列转行(UNPIVOT):将表中的列数据转换为行数据,可以使用UNPIVOT操作来实现。例如,有一个表包含了学生的姓名和各科目的成绩信息:
SELECT student_name, subject, score
FROM (
SELECT *
FROM student_scores
)
UNPIVOT
(
score FOR subject IN ('Math', 'English', 'Science')
);
在上面的例子中,将科目(Math,English,Science)作为列数据,将学生的姓名与其对应的成绩作为行数据。
以上就是关于“oracle的行转列和列转行怎么实现”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm