mysql(9):基础,UNION子句的语法介绍

MySQL中的UNION和UNION ALL详解 UNION和UNION ALL是MySQL中用于合并多个SELECT语句结果集的操作符,它们在数据合并方式和性能上有重要区别。 阅读详情

描述

MySQL UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据。

语法

MySQL UNION 操作符语法格式:

SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions]
UNION [ALL | DISTINCT]
SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions];

参数

  • expression1, expression2, ... expression_n: 要检索的列。

  • tables: 要检索的数据表。

  • WHERE conditions: 可选, 检索条件。

  • DISTINCT: 可选,删除结果集中重复的数据。默认情况下 UNION 操作符已经删除了重复数据,所以 DISTINCT 修饰符对结果没啥影响。

  • ALL: 可选,返回所有结果集,包含重复数据。


演示数据库

在本教程中,我们将使用 RUNOOB 样本数据库。

下面是选自 "Websites" 表的数据:

mysql> SELECT * FROM Websites;
+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘宝          | https://www.taobao.com/   | 13    | CN      |
| 3  | 菜鸟教程      | http://www.runoob.com/    | 4689  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
| 7  | stackoverflow | http://stackoverflow.com/ |   0 | IND     |
+----+---------------+---------------------------+-------+---------+

下面是 "apps" APP 的数据:

mysql> SELECT * FROM apps;
+----+------------+-------------------------+---------+
| id | app_name   | url                     | country |
+----+------------+-------------------------+---------+
|  1 | QQ APP     | http://im.qq.com/       | CN      |
|  2 | 微博 APP | http://weibo.com/       | CN      |
|  3 | 淘宝 APP | https://www.taobao.com/ | CN      |
+----+------------+-------------------------+---------+
3 rows in set (0.00 sec)


SQL UNION 实例

下面的 SQL 语句从 "Websites" 和 "apps" 表中选取所有不同的country(只有不同的值):

实例

SELECT country FROM Websites
UNION
SELECT country FROM apps
ORDER BY country;

执行以上 SQL 输出结果如下:

注释:UNION 不能用于列出两个表中所有的country。如果一些网站和APP来自同一个国家,每个国家只会列出一次。UNION 只会选取不同的值。请使用 UNION ALL 来选取重复的值!


SQL UNION ALL 实例

下面的 SQL 语句使用 UNION ALL 从 "Websites" 和 "apps" 表中选取所有的country(也有重复的值):

实例

SELECT country FROM Websites
UNION ALL
SELECT country FROM apps
ORDER BY country;

执行以上 SQL 输出结果如下:



带有 WHERE 的 SQL UNION ALL

下面的 SQL 语句使用 UNION ALL 从 "Websites" 和 "apps" 表中选取所有的中国(CN)的数据(也有重复的值):

实例

SELECT country, name FROM Websites
WHERE country='CN'
UNION ALL
SELECT country, app_name FROM apps
WHERE country='CN'
ORDER BY country;

执行以上 SQL 输出结果如下:

深入浅出:.sh文件在Linux系统中的实战应用与技巧 本文深入浅出地介绍了.sh文件在Linux系统中的实战应用与技巧。从基础概念入手,详细讲解了Bash脚本的运行方法、权限管理,并通过编写自动化备份脚本等实例,展示了如何利用Shell脚本提升工作效率。文章还涵盖了脚本调试、错误处理以及函数、参数解析等进阶技巧,帮助读者从入门到精通,掌握这一强大的自动化工具。 阅读详情

相关推荐

用野火FPGA开发板(EP4CE10)手把手教你实现一个高精度频率计(附完整Verilog代码)

本文详细介绍了基于野火FPGA开发板(EP4CE10)实现高精度频率计的全过程,涵盖等精度测量法的核心原理、Verilog代码实现及优化技巧。通过实际案例演示,帮助开发者掌握1Hz-50MHz范围、精度达0.1%的频率计设计方法,并提供完整的工程代码和实测数据。

weixin_29261711的博客 439

MySQL UNION 操作符

MySQL UNION 操作符本教程为大家介绍 MySQL UNION 操作符的语法和实例。描述MySQL UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据。语法MySQL UNION 操作符语法格式:SELECTexpression1,expression2,...expression_n ...

weixin_34281477的博客 185

智能农业大棚

目 录 摘要 1.绪论 2.系统概述及单片机介绍 2.1整体方案设计思想 2.2系统组成 2.2.1主控芯片的选择 2.2.2传感器模块选择 2.2.3电机驱动模块 2.3 单片机介绍 2.3.1 AT89C51单片机的基本组成 2.3.2AT89C51主要特性 2.3.3管脚说明 2.3.4 AT89C51单片机的存储器 2.3.4.1 程序存储器 2.3.4.2 数据存储器 2.3.5 振荡电路和时钟 2.3.6 AT89C51的中断

weixin_70886450的博客 1327

mysql union 与 union all 语法及用法

mysql union 与 union all 语法及用法,与order by及limit同用时的注意事项

sinat_31583645的博客 5436

28GHz毫米波滤波器设计实战:用SynMatrix快速搞定SIW带通滤波器(附完整参数)

本文详细介绍了如何使用SynMatrix工具链高效设计28GHz SIW带通滤波器,涵盖智能参数预测、多物理场联合优化和加工误差补偿等核心技术。通过实战案例和完整参数模板,帮助射频工程师快速实现毫米波滤波器设计,显著提升工作效率并避免反复迭代。

weixin_29284657的博客 495

Spring Boot集成ShardingSphere实现数据加密及数据脱敏 | Spring Cloud 48

利用ShardingSphere实现: - 数据加密 - 数据脱敏

gmHappy 1万+

mysql 两个表 字段赋值

把 B表的 uniond 值 填到 A表的 username 中去   UPDATE  member A, `thirdusers` B SET A.username = B.unionid WHERE A.userid = B.userid  

wyqjx 1419

QQ也能连接OpenClaw啦!手机QQ远程操控本地AI保姆级教程

2026年最新OpenClaw与QQ连接教程发布,支持手机远程操控本地AI。腾讯官方推出QQ Bot插件,无需服务器即可实现三步绑定。教程提供三种连接方案:新手首选的扫码连接(10分钟搞定)、稳定的QQ群机器人方案,以及公网接入方案。详细步骤包括版本更新、插件安装、扫码绑定和功能测试,并附常见问题解决方案。该功能让用户通过QQ指令即可实现文件整理、文档生成等电脑操作,真正实现"手机发指令,电脑自动干"。

通俗易懂学IT 590

mysql的union和union all

1. sql中 union 和 union all 的用法 如果我们需要将两个 select 语句的结果作为一个整体显示出来,我们就需要用到 union 或者 union all 关键字。union (或称为联合)的作用是将多个结果合并在一起显示出来。 union 和 union...

t194978的博客 8万+

电脑技巧:Hyper-V安装UOS操作系统图文教程

今天给大家分享微软官方Hyper-v虚拟机管理软件安装UOS操作系统图文教程,感兴趣的朋友也可以下载试一试,当然有啥问题也可以互相沟通交流!

IT技术分享社区 4706

外部PLC触发VisionMaster多流程运行

上一讲,介绍了海康VisionMaster与西门子PLC1200进行S7通信。在前一讲的基础上,讲解如何通过PLC触发,实现VisionMaster的多流程运行。

haier123888的博客 4652

MySQL SELECT语法(四)UNION语法详解

  源自MySQL 5.7 官方手册:13.2.9.3UNION Syntax 一、UNION语法   UNION用于将多个SELECT语句的结果合并到一个结果集中。 SELECT ... UNION [ALL | DISTINCT] SELECT ... [UNION [ALL | DISTINCT] SELECT ...]   将会使用第一个SELECT语句中的列名...

weixin_30745641的博客 404

ValueError: numpy.dtype size changed, may indicate binary incompatibility. Expected 96 from C 解决方案

本文主要介绍了ValueError: numpy.dtype size changed, may indicate binary incompatibility. Expected 96 from C header, got 88 from PyObject解决方案,希望能对使用Numpy的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 1万+

【MySQL基础】MySQL复合查询全面解析:从基础到高级应用

【MySQL基础】关于MySQL查询操作的知识点的全面深度刨析,掌握查询操作的同时学会如何高效的查询!!

2301_80220607的博客 3396

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

MySQL 语法大全

MySQL 语法大全 文章目录MySQL 语法大全1. MySQL创建数据库2. MySQL 删除数据库3. MySQL 选择数据库4. MySQL 数据类型数值类型日期和时间类型字符串类型5. MySQL 创建数据表6. MySQL 删除数据表7. MySQL 插入数据8. MySQL 查询数据9. MySQL WHERE 子句10. MySQL UPDATE 更新11. MySQL DELETE 语句12. MySQL LIKE 子句13. MySQL UNION 操作符14. MySQL 排序15.

weixin_45866849的博客 4745

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

9、delete删除数据记录与like子句指定条件、union操作符

学习目标: delete删除数据记录与like子句指定条件、union操作符 学习内容: 1.delete删除数据 delete from <表名称> ; 删除表中所有数据 如果没有指定 WHERE 子句,MySQL 表中的所有记录将被删除。 delete from <表名称> where age=21; 删除表中指定数据 可以在 WHERE 子句中指定任何条件 mysql> select * from polon; +----+-----------+-----+-----

琰潇秋的博客 2415

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

MYSQL——基础知识(LIKE、UNION、ORDER BY)

MySQL查询优化指南:LIKE、UNION与ORDER BY详解 本文重点解析MySQL三大关键查询技术: LIKE子句 - 实现模糊匹配,支持%和_通配符,注意前导%会导致全表扫描 UNION操作 - 合并结果集,UNION自动去重,UNION ALL保留重复项 ORDER BY - 控制排序方式,支持多字段、表达式和NULL值处理 使用建议: LIKE优先使用右通配符(如'key%')以利用索引 无需去重时使用UNION ALL提升性能 排序字段应建立索引,避免大结果集无限制排序 中文排序需设置utf

禹凕的博客 1279

mysql基础语法速成版

mysql基础语法速成版

小张的博客 1045

mysql查询union_MySQL组合查询中UNION排序规则示例

正如所见,并是非常容易使用的。但在进行并时有几条规则需要注意。1.UNION 必须由两条或两条以上的 SELECT 语句组成,语句之间用关键字 UNION 分隔(因此,如果组合4条 SELECT 语句,将要使用3个UNION 关键字)。2. UNION 中的每个查询必须包含相同的列、表达式或聚集函数(不过各个列不需要以相同的次序列出)。3.列数据类型必须兼容:类型不必完全相同,但必须是DBMS可以...

weixin_31546795的博客 699

MySQL SELECT语法(一)SELECT语法详解

  源自MySQL 5.7 官方手册:13.2.9SELECT Syntax   SELECT的语法如下: SELECT [ALL | DISTINCT | DISTINCTROW ] [HIGH_PRIORITY] [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUF...

weixin_30549175的博客 1177

Python和MySQL对比(2):用Pandas 实现MySQL的 union 和 join 语法效果

本文主要介绍 MySQL 中的union和join如何使用pandas实现,同时二者又有什么区别。注:Python是很灵活的语言,达成同一个目标或有多种途径,我提供的只是其中一种解决方法,大家有其他的方法也欢迎留言讨论。

明而决之 2357

MySQL中UNION和UNION ALL的使用

在数据库中,UNION和UNION ALL关键字都是将两个结果集合并为一个,但这两者从使用和效率上来说都有所不同。 MySQL中的UNION UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。实际大部分应用中是不会产生重复的记录,最常见的是过程表与历史表UNION。如: select * from gc_dfys unio

qjhare的专栏 274

mysql rank的用法,sql - 在mysql中使用union和order by子句

sql - 在mysql中使用union和order by子句我想在mysql查询中使用union with order。我根据不同的标准从基于距离的表中获取不同类型的记录,以便在我的网站上进行搜索。第一个选择查询返回与确切位置搜索相关的数据。第二个选择查询返回与距离搜索位置5公里内的距离相关的数据。第三个选择查询返回与距搜索地点5-15公里范围内的距离相关的数据。然后我使用union来合并所有...

weixin_35039018的博客 307

mysql union 不同字段_mysql中union和union all的区别和注意点

mysql中union和union all的区别和注意点昨天有个功能要实现排行效果,而且是随机按照某些字段的总值,但是第一个又要不一样,因为第一个人给了钱,所以要排第一。打个比方吧,表(userinfo)中有这几个字段:username,isvalid,givedmoney,sumip,dayip,monthip,visitcount,regdate现在要实现显示排行前10位用户,出现在排行第一位...

weixin_30548481的博客 2393

mysql union 分析

1. SQL语句 sql语句:select sql_no_cache id1 from t1 union select id21 from t2 执行计划: mysql> explain select sql_no_cache id1 from t1 union select id21 from t2 \G *************************** 1. row *************************** id: 1 select_type: PRI

晨风 507

mysql select语法_MySQL SELECT语法(一)SELECT语法详解

SELECT的语法如下:SELECT[ALL | DISTINCT | DISTINCTROW ][HIGH_PRIORITY][STRAIGHT_JOIN][SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT][SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS]select_expr [, sel...

weixin_30362743的博客 1516
上一篇: mysql(8):基础,LIKE 子句的语法介绍
下一篇: mysql(10):基础,ORDER 子句的语法介绍
后台技术汇
博客等级 码龄11年 670粉丝 531原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值