当前位置: 首页 > news >正文

UNION 联合查询

1.UNION ALL联合查询

同样为了演示方便,先向 teacher 表插入多条测试数据:

INSERT INTO teacher
(name,age,id_number,email)
VALUES
('姓名一',17,'42011720200604077X',NULL),
('姓名二',18,'42011720200604099X','123@qq.com'),
('姓名三',19,'42011720200604020X',NULL),
('姓名四',20,'42011720200604022X','345@qq.com'),
('姓名五',21,'42011720200604033X',NULL),
('姓名六',22,'42011720200604077X',NULL),
('姓名七',23,'42011720200604099X','123@qq.com'),
('姓名八',24,'42011720200604020X',NULL),
('姓名九',25,'42011720200604022X','345@qq.com'),
('姓名十',26,'42011720200604033X',NULL),
('姓名1',27,'42011720200604077X',NULL),
('姓名2',28,'42011720200604099X','123@qq.com'),
('姓名3',29,'42011720200604020X',NULL),
('姓名4',30,'42011720200604022X','345@qq.com'),
('姓名5',31,'42011720200604033X',NULL),
('姓名6',32,'42011720200604077X',NULL),
('姓名7',33,'42011720200604099X','123@qq.com'),
('姓名8',32,'42011720200604020X',NULL),
('姓名9',31,'42011720200604022X','345@qq.com'),
('姓名0',30,'42011720200604033X',NULL)

执行结果如下图:
在这里插入图片描述

现在使用 UNION ALL 把满足两种查询条件的结果集并到一起:

SELECT * FROM teacher WHERE age > 20
UNION ALL
SELECT * FROM teacher WHERE age > 25;

执行结果如下图:

在这里插入图片描述

Tips:如上图所示,UNION ALL 将两种查询结果并到一起,仔细观察可以发现结果集中有重复的数据,所以使用 UNION ALL 联合查询的结果集没有去掉重复的数据。

2.UNION 联合查询

现在使用 UNION 把上面两种结果集并到一起:

SELECT * FROM teacher WHERE age > 20
UNION
SELECT * FROM teacher WHERE age > 25;

执行结果如下图:
在这里插入图片描述

Tips:如上图所示,UNION 将两种查询结果并到一起,可以看到结果集中已经去掉重复的数据,需要根据具体业务选择使用 UNION 还是 UNION ALL。

3.小结

UNION 和 UNION ALL 联合查询需要结果集,需要注意的是要根据具体业务选择使用 UNION 还是 UNION ALL 其中 UNION 联合查询已经去除了重复的结果集 UNION ALL 联合查询没有去除重复结果集,但是 UNION ALL查询性能要比 UNION好一些。
http://www.lryc.cn/news/463266.html

相关文章:

  • blender 理解 积木组合 动画制作 学习笔记
  • 关于 FreeSWITCH mod_sofia 注册过期时间的测试
  • 【LeetCode:349. 两个数组的交集 + 哈希表】
  • 根据语音生成视频33搜帧
  • 目标检测数据集图片及标签同步锐化
  • 滚雪球学Redis[6.4讲]:Redis消息队列:构建高效的消息通信与任务调度系统
  • 《计算机视觉》—— 换脸
  • 【JavaEE初阶】深入透析文件-IO关于文件内容的操作(四种文件流)
  • 复习:react 中的 refs,怎么使用,有哪些使用场景
  • Python OpenCV精讲系列 - 目标检测与识别深入理解(二十)
  • golang中的上下文
  • Navigation2 算法流程
  • OpenAI swarm+ Ollama快速构建本地多智能体服务 - 1. 服务构建教程
  • HTB:Wifinetic[WriteUP]
  • 专业学习|马尔可夫链(概念、变体以及例题)
  • RK3576 安卓SDK编译环境搭建
  • Renesas R7FA8D1BH (Cortex®-M85) 上光电编码器测速功能
  • 软件测试学习笔记丨Linux三剑客-sed
  • Vue脚手架学习 vue脚手架配置代理、插槽、Vuex使用、路由、ElementUi插件库的使用
  • 使用yml文件安装环境时,如何添加conda和pip的镜像源
  • c语言经典100例
  • 百易云资产管理运营系统 ufile.api.php SQL注入漏洞复现
  • 【分布式微服务云原生】《Redis RedLock 算法全解析:应对时钟漂移与网络分区挑战》
  • OceanBase 的写盘与传统数据库有什么不同?
  • 用Java爬虫API,轻松获取taobao商品SKU信息
  • OpenHarmony 入门——ArkUI 自定义组件内同步的装饰器@State小结(二)
  • 【Linux驱动开发】嵌入式Linux驱动开发基本步骤,字符设备开发入门,点亮LED
  • 搬砖14、Python网络编程入门
  • Transformer: Attention is All you need
  • C++:排序算法