[数据库] SQL查询语句表行列转换及一行数据转换成两列丨【绽放吧!数据库】
【摘要】 本文主要讲述了SQL查询语句表之间的行列转换,同时也包括如何将一行数据转换成两列数据的方法、子查询的应用、decode函数的用法。希望文章对你有所帮助!
这是2014年作者早期分享的博客,希望对华为云的读者有帮助。本文主要讲述了SQL查询语句表之间的行列转换,同时也包括如何将一行数据转换成两列数据的方法、子查询的应用、decode函数的用法。希望文章对你有所帮助~
- 1.创建数据库表及插入数据
- 2.子查询统计不同性质的学生总数
- 3.一行数据转换成两列数据 union all
- 4.表行列数据转换(表转置)
1.创建数据库表及插入数据
创建数据库、创建学生表并设置主键、插入数据代码如下:
2.子查询统计不同性质的学生总数
使用子查询统计不同学院总人数、不同性别总人数和河北/河南学生总人数。
PS:若中文汉字太长报错,则需引用双引号。如:select num as "项目(文化学术讲座)"
3.一行数据转换成两列数据
这时,项目SQL语句的需要是显示成两列如下图所示:
其实简单编写SQL语句,前端再处理这些数据更加方便,当然SQL也是能处理的。
当时走进了一个误区,认为"软件人数"是select中as自定义的一行数据的属性,如何显示在表中呢?当时是通过Oracle方法decode自定义显示的,其实直接输出,union all取代子查询即可。当然union all其它表也可以继续添加。
4.表行列数据转换(表转置)
最后希望文章对你有所帮助,其实SQL语句中还是有很多非常高深的变化,目前只窥得一二啊!fighting...O(∩_∩)O
希望能与大家一起在华为云社区共同承载,原文地址:https://blog.csdn.net/Eastmount/article/details/50559008
【绽放吧!数据库】有奖征文火热进行中:https://bbs.huaweicloud.com/blogs/285617
(By:娜璋之家 Eastmount 2021-07-22 夜于武汉)
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)