首页 > 数据库 >SQL练习:UNION实现多张表的纵向合并

SQL练习:UNION实现多张表的纵向合并

时间:2023-01-30 21:45:11浏览次数:33  
标签:UNION gender 张表 gpa SQL device male id

左、内、右连接可以实现多表横向合并,而UNION关键字则可以实现多表纵向合并

  • UNION:实现多表纵向合并(默认含去重功能)
<sql查询语句1>
UNION
<sql查询语句2>
UNION
...
UNION
<sql查询语句n>
  • UNION ALL:实现多表纵向合并(不含去重功能)
<sql查询语句1>
UNION ALL
<sql查询语句2>
UNION ALL
...
UNION ALL
<sql查询语句n>

习题:
描述
题目:现在运营想要分别查看学校为山东大学或者性别为男性的用户的device_id、gender、age和gpa数据,请取出相应结果,结果不去重。

示例:user_profile
id device_id gender age university gpa active_days_within_30 question_cnt answer_cnt
1 2138 male 21 北京大学 3.4 7 2 12
2 3214 male 复旦大学 4 15 5 25
3 6543 female 20 北京大学 3.2 12 3 30
4 2315 female 23 浙江大学 3.6 5 1 2
5 5432 male 25 山东大学 3.8 20 15 70
6 2131 male 28 山东大学 3.3 15 7 13
7 4321 male 26 复旦大学 3.6 9 6 52

根据示例,你的查询应返回以下结果(注意输出的顺序,先输出学校为山东大学再输出性别为男生的信息):
device_id gender age gpa
5432 male 25 3.8
2131 male 28 3.3
2138 male 21 3.4
3214 male None 4
5432 male 25 3.8
2131 male 28 3.3
4321 male 28 3.6

实现:

select device_id, gender, age, gpa 
from user_profile
where university = '山东大学'
union all
select device_id, gender, age, gpa 
from user_profile
where gender = 'male';

标签:UNION,gender,张表,gpa,SQL,device,male,id
From: https://www.cnblogs.com/Mr-Sponge/p/17077322.html

相关文章

  • 16.4 SQL Server删除角色
    SQLServer删除角色目录SQLServer删除角色简介示例1)DROPROLE简单示例2)DROPROLE删除具有成员的角色简介语法:DROPROLE[IFEXISTS]role_name;DROPROLE无法删除拥......
  • 18.1 SQL Server阻塞
    SQLServer阻塞目录SQLServer阻塞简介示例简介当两个会话试图同时更新同一数据时,会发生阻塞。第一个会话锁定数据,第二个会话需要等待第一个会话完成并释放锁定。结果......
  • 18.2 SQL Server死锁
    SQLServer死锁目录SQLServer死锁简介示例简介死锁是一个并发问题,其中两个会话会阻止彼此的进程。第一个会话锁定了另一个会话想要访问的资源,反之亦然。下图说明了SQL......
  • mysql02
    mysqlday01课堂笔记1、什么是数据库?什么是数据库管理系统?什么是SQL?他们之间的关系是什么?数据库: 英文单词DataBase,简称DB。按照一定格式存储数据的一些文件的组合。 ......
  • PostgreSQL:查询数据表信息
    PostgreSQL14.0pgAdmin4Version5.7-- 0、序章要查询数据表信息,需要用到系统表或系统视图等,比如,pg_tables、pg_class、information_schema等。使用pgAdmin4......
  • 在linux下安装mysql8.0.22
    前提准备第一步:检查是否有安装过mysql命令:# rpm -qa|grep-Imysql,使用rpm方式进行验证,其中i表示忽略大小写 假如安装过了mysql则需要先卸载命令:# rpm -e--no......
  • MySQL基础-SQL-DDL
    1.SQL通用语法1.SQL语句可以单行或多行书写,以分号结尾。 2.SQL语句可以使用空格/缩进来增强语句的可读性。 3.MySQL数据库的SQL语句不区分大小写,关键......
  • MySql慢查询
    一、简介开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。开发环境建议一直开启便与优化生成环境建议关......
  • SQL改写案例3(标量子查询改写的各种姿势)
    同事提供一条SQL,原执行时间需要3.6S,反馈比较慢需要优化一下,废话不说贴SQL:原SQL:select((selectcount(1)FROMwf_bus_instancewfjoin......
  • mac m1使用oracle sqlplus
    环境macstudio(2022)ChipAppleM1Maxoracle官网https://www.oracle.com/database/technologies/instant-client/macos-intel-x86-downloads.html只有Intelx86的......