【数据库】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
相关推荐
2301_7813925235 分钟前
MySQL格式化数据展示——分页查询
java·数据库·mysql·性能优化
va学弟42 分钟前
SQL 进阶知识——多表关联与约束
数据库·sql
一 乐1 小时前
学生宿舍管理|基于springboot + vue学生宿舍管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·助农电商系统
heze091 小时前
sqli-labs-Less-23
数据库·mysql·网络安全
米汤爱学习1 小时前
Redis-漏洞
数据库·redis·缓存
wWYy.1 小时前
详解redis(7):数据结构List
数据库·redis·缓存
砚边数影1 小时前
时序数据库国产化替代,破局迁移“三不”困局
数据库·时序数据库·kingbase·kingbasees·金仓数据库
专注于大数据技术栈1 小时前
Redis 中 USED 和 RSS
数据库·redis·缓存
一个响当当的名号2 小时前
lectrue8 表索引
数据库