【数据库】MySQL之union联合查询

联合查询:

关键字union,作用就是将多条查询语句的结果合并成一个结果集。

案例:(查询部门编号大于100或名字中含有a字符的员工信息)

bash 复制代码
select * from employees where department_id>100 or last_name like '%a%';

用联合查询演示:

sql 复制代码
select * from employees where department_id>100
union
select * from employees where last_name like '%a%';

union是应用场景:

比如在我们有个数据库中的老师表和学生表,两者之间没有直接的关联关系,但是又有一些共通性,但是现在我们想要查询学校所有男老师和男学生的信息(学生和老师的编号,姓名,出现日期,性别),这个时候就是应用union的时候。

sql 复制代码
SELECT `tno` 编号,`tname`,`tsex`,`tbirthday`
FROM `teachers`
WHERE `tsex`='男'
UNION
SELECT `sno`,`sname`,`ssex`,`sbirthday`
FROM `students`
WHERE `ssex`='男';

联合查询的特点:

  • 联合查询的两个子查询的查询字段个数要一致
  • 要求联合查询的子查询的查询列表顺序要在内容上保持一致
  • 使用union联合默认会自动去重,如果不想去重可以将union改为union all
相关推荐
oradh11 小时前
Oracle TX 锁 Mode 4(Share)问题排查总结
数据库·oracle·tx 锁 mode 4·oracle tx 锁
2601_9620652512 小时前
[MySQL] SQL优化之性能分析
java·sql·mysql
yi.Ist12 小时前
数据定义语言-DDL操作
数据库·学习·mysql·oracle·大海豚
阿kun要赚马内12 小时前
MySQL 索引基础
后端·mysql
2601_9632827713 小时前
工程项目、政企采购为什么优先选择对讲机批量采购?
数据库
Doraemomo13 小时前
SQLite数据库
数据库·sqlite
2601_9621771314 小时前
【MySQL篇】聚合查询,联合查询
android·java·mysql
云贝教育-郑老师14 小时前
MySQL 的“黑匣子“:Performance Schema 把数据库内部变成一张可查的表
数据库·mysql
这个DBA有点耶16 小时前
同城双活落地的三座山:网络延迟、脑裂预防、反向同步
数据库·架构·dba