【数据库】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
相关推荐
AI人工智能+电脑小能手6 小时前
【大白话说Java面试题 第78题】【Mysql篇】第8题:解释下最左前缀原则?
java·开发语言·数据库·mysql·面试
霸道流氓气质6 小时前
MyBatis 分页查询 + Feign 数据补充实战指南
数据库·oracle·mybatis
一起逃去看海吧6 小时前
对接LangSmith
java·前端·数据库
wyhwust6 小时前
web应用技术-第一次课后作业
java·前端·数据库
hef2886 小时前
SQL角色分组统计与功能扩展实战指南
数据库
隐退山林6 小时前
JavaEE进阶:MyBatis操作数据库(进阶)
数据库·java-ee·mybatis
我是一颗柠檬6 小时前
【MySQL全面教学】MySQL锁机制与并发控制Day10(2026年)
数据库·sql·mysql·database
代码中介商7 小时前
B树:数据库索引的高效基石
数据结构·数据库
fen_fen7 小时前
Oracle12,新增自增主键表和批量插入数据
数据库·sql·mysql
deepin_sir7 小时前
11 - 模块与包
前端·数据库·python