【数据库】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
相关推荐
挖掘狂人11 分钟前
MySQL 深分页优化:limit 100000, 10 慢在哪,怎么救
后端·sql·mysql
codigger13 分钟前
MySQL 深分页优化:limit 100000, 10 慢在哪,怎么救
数据库·sql·mysql·程序员
麦壳饼24 分钟前
SonnetDB 5.0 正式发布:增强 SQL 与事务,开放九模型 MCP 读写
数据库·人工智能·sql·sonnetdb
Decay__9 小时前
18_MySQL 智能巡检方案 —— 巡检项清单 / 一键巡检脚本 / 健康评分
运维·数据库·sql·mysql·架构
java_logo10 小时前
Docker 部署 Liquibase:轻松搭建数据库变更管理
数据库·docker·容器·数据库管理·liquibase·轩辕镜像·数据库变更
凤凰院凶涛QAQ11 小时前
《MySQL内核拆解:从SQL到InnoDB》(四) : 联合查询 & 视图
数据库·sql·mysql
码农小河6611 小时前
基于SSM+JSP的高校专业信息管理系统【附源码+数据库】
java·开发语言·数据库
张小姐的猫11 小时前
【MySQL】访问 & 数据流动原理
android·数据库·mysql·adb·1024程序员节
这个DBA有点耶15 小时前
信创场景下数据同步软件怎么选?对比开源CDC与原生闭环工具的结构性差异
数据库·mysql·架构