力扣数据库题库学习(5.8日)--mysql UNION与UNION ALL方法使用详解

UNION ALL

UNION ALL 是 SQL 中用于合并两个或多个查询结果集的操作符。它将两个或多个查询的结果集堆叠在一起,不去重重复的行。

使用方法:

UNION ALL 的语法如下:

sql 复制代码
SELECT column1, column2, ...
FROM table1
UNION ALL
SELECT column1, column2, ...
FROM table2;

其中,column1, column2, ... 是要查询的列,而 table1table2 是要查询的表。

示例 1:合并两个表的结果集

假设有两个表 CustomersSuppliers,它们有一些共同的列,我们想要将它们的数据合并成一个结果集。

sql 复制代码
SELECT customer_id, name, email
FROM Customers
UNION ALL
SELECT supplier_id, name, email
FROM Suppliers;

这个查询会将 Customers 表和 Suppliers 表的数据合并成一个结果集,包括了所有的行,不去重。

示例 2:合并查询的结果集

假设我们有两个查询,它们的列相同,我们想要将它们的结果集合并起来。

sql 复制代码
SELECT product_id, name, price
FROM Products
WHERE category = 'Electronics'
UNION ALL
SELECT product_id, name, price
FROM Products
WHERE category = 'Clothing';

这个查询会将两个子查询的结果集合并成一个结果集,包括了所有满足条件的行,不去重。

总的来说,UNION ALL 用于合并多个查询的结果集,它会将所有行都包含在结果集中,不去重。

UNION

UNION 是 SQL 中用于合并两个查询结果集的操作符。它将两个查询的结果集合并在一起,并自动去重重复的行。

使用方法:

UNION 的语法如下:

sql 复制代码
SELECT column1, column2, ...
FROM table1
UNION
SELECT column1, column2, ...
FROM table2;

其中,column1, column2, ... 是要查询的列,而 table1table2 是要查询的表。

示例 1:合并两个表的结果集并去重

假设有两个表 CustomersSuppliers,它们有一些共同的列,我们想要将它们的数据合并成一个结果集,并去重重复的行。

sql 复制代码
SELECT customer_id, name, email
FROM Customers
UNION
SELECT supplier_id, name, email
FROM Suppliers;

这个查询会将 Customers 表和 Suppliers 表的数据合并成一个结果集,并去除重复的行。

示例 2:合并查询的结果集并去重

假设我们有两个查询,它们的列相同,我们想要将它们的结果集合并起来,并去重。

sql 复制代码
SELECT product_id, name, price
FROM Products
WHERE category = 'Electronics'
UNION
SELECT product_id, name, price
FROM Products
WHERE category = 'Clothing';

这个查询会将两个子查询的结果集合并成一个结果集,并去除重复的行。

总的来说,UNION 用于合并两个查询的结果集,并自动去重。

相关推荐
Turnip12024 小时前
深度解析:为什么简单的数据库"写操作"会在 MySQL 中卡住?
后端·mysql
爱可生开源社区4 小时前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
随逸1778 小时前
《从零搭建NestJS项目》
数据库·typescript
西岸行者1 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
加号31 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏1 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
李慕婉学姐1 天前
Springboot智慧社区系统设计与开发6n99s526(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
百锦再1 天前
Django实现接口token检测的实现方案
数据库·python·django·sqlite·flask·fastapi·pip
WeiXin_DZbishe1 天前
基于django在线音乐数据采集的设计与实现-计算机毕设 附源码 22647
javascript·spring boot·mysql·django·node.js·php·html5
tryCbest1 天前
数据库SQL学习
数据库·sql