【数据库】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
相关推荐
爱喝水的鱼丶1 分钟前
SAP-ABAP:SELECT查询性能优化基础——索引匹配、条件顺序与缓冲机制利用技巧
数据库·性能优化·select·sap·abap·开发交流·交流学习
zhoupenghui16811 分钟前
ClickHouse merge引擎详解以及应用
数据库·clickhouse·merge·mergetree
@insist12316 分钟前
信息系统管理工程师-任务、标准、EDM 过程与关键域
java·大数据·数据库
qq_3660862232 分钟前
关于接口路径中中文值解码问题
java·开发语言·数据库
ClouGence39 分钟前
数据库为什么需要 SSL?一文了解 SSL 连接原理与配置
数据库·开源
一十九的酒42 分钟前
Oracle 密码恢复实战:使用 SPARE4 哈希值还原用户密码
数据库·oracle·密码丢失·密码恢复·账户锁定
冰暮流星42 分钟前
mysql之新建表及对表的查询
android·数据库·mysql
C语言Plus1 小时前
C++ SqlBuilder一个简单、灵活且类型安全的 C++ SQL 构建器库
数据库·sql·安全·c++20
喝茶与编码1 小时前
真实业务场景:高并发 Upsert 死锁频发?InnoDB 锁机制与重试机制深度解析
数据库·python
BreezeJiang1 小时前
做完 AI 日记本后,我终于理解了:向量数据库不是用来替代 MySQL 的
数据库