我的编程空间,编程开发者的网络收藏夹
学习永远不晚

SQL中UNION关键字怎么用

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

SQL中UNION关键字怎么用

小编给大家分享一下SQL中UNION关键字怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

SQL中的UNION关键字,将实现将多个查询条件中的结果展示出来。

UNION

  UNION的中文含义是联合的意思,即合并两个或多个 SELECT 语句的结果。使用技巧如下:

  • UNION 内部的每个 SELECT 语句必须拥有相同数量的列。

  • 列必须拥有相似的数据类型。

  • 每个 SELECT 语句中的列的顺序必须相同。

相同数量的列

如下图,使用上一章介绍的数据作为演示数据

SQL中UNION关键字怎么用

分别建立表s_user 和表s_user_1

CREATE TABLE `s_user` (
  `userid` int(11) NOT NULL AUTO_INCREMENT,
  `user_name` varchar(255) DEFAULT NULL,
  `name` varchar(255) DEFAULT NULL,
  `pass_word` varchar(255) DEFAULT NULL,
  `salt` varchar(255) DEFAULT NULL,
  `state` varchar(255) DEFAULT NULL,
  `create_time` datetime DEFAULT NULL,
  PRIMARY KEY (`userid`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;

测试数据如下:

INSERT INTO `test`.`s_user`(`userid`, `user_name`, `name`, `pass_word`, `salt`, `state`, `create_time`) VALUES (1, '小米', '小米', '123123', '123', '1', '2022-02-10 19:48:43');
INSERT INTO `test`.`s_user`(`userid`, `user_name`, `name`, `pass_word`, `salt`, `state`, `create_time`) VALUES (2, '小白', '小白', '123123', '123', '1', '2022-02-10 19:48:43');

INSERT INTO `test`.`s_user_1`(`userid`, `user_name`, `name`, `pass_word`, `salt`, `state`, `create_time`) VALUES (1, '小红', '小红', '123123', '123', '1', '2022-02-10 19:48:43');
INSERT INTO `test`.`s_user_1`(`userid`, `user_name`, `name`, `pass_word`, `salt`, `state`, `create_time`) VALUES (2, '小黄', '小黄', '123123', '123', '1', '2022-02-10 19:48:43');

UNION 内部的每个 SELECT 语句必须拥有相同数量的列:先查询具有相同列的SQL

SELECT * FROM `s_user` UNION SELECT * FROM `s_user_1`

查询出所有的列,可以看到,执行结果如下。

SQL中UNION关键字怎么用

如果第一个查询是所有列,第二个查询是三个字段,那么查询结果又是怎么样呢,现在执行如下SQL:

错误用法

SELECT * FROM `s_user` UNION SELECT userid,name,pass_word FROM `s_user_1`

SQL中UNION关键字怎么用

错误提示:使用的SELECT语句查询出不同的列数

正确用法

SELECT userid,name,pass_word  FROM `s_user` UNION SELECT userid,name,pass_word FROM `s_user_1`

SQL中UNION关键字怎么用

数据类型

  上面看到了多个查询的列数必须相同,那么查询出的列数如果相同,查询字段的数据类型不同,是否可正常处理呢?下面将s_user查询中的pass_word换成create_time,进行查询。通过查询之后可以看到。在SQL查询中,列的数据类型是无关的。当然实际业务中是不会将其设置成不同的类型的。

SELECT userid,name,create_time  FROM `s_user` UNION SELECT pass_word,name,userid FROM `s_user_1`

SQL中UNION关键字怎么用

列顺序

  在使用UNION关键字进行查询时,是否和列的顺序有关呢,上面看到可能和列的顺序有关,可能也是无关的,那么进行一下测试。可以看到执行结果是和列的顺序无关的。在实际业务中是合并多个查询,因此我们在项目中定义是需要列的顺序一致的。

SELECT create_time,userid,name  FROM `s_user` UNION SELECT pass_word,name,userid FROM `s_user_1`

SQL中UNION关键字怎么用

UNION 和 UNION ALL区别

  为了测试UNION 和 UNION ALL区别需要在数据表s_user_1中增加【小白】,与表s_user中的【小白】都存在数据库中,两个会有什么不同结果呢。

INSERT INTO `test`.`s_user_1`(`userid`, `user_name`, `name`, `pass_word`, `salt`, `state`, `create_time`) VALUES (3, '小白', '小白', '123123', '123', '1', '2022-02-10 19:48:43');

SQL中UNION关键字怎么用

首先执行:

SELECT user_name,name,pass_word,salt
FROM `s_user` UNION SELECT user_name,name,pass_word,salt FROM `s_user_1`

执行结果:

SQL中UNION关键字怎么用

再次执行

SELECT user_name,name,pass_word,salt
FROM `s_user` UNION ALL SELECT user_name,name,pass_word,salt FROM `s_user_1`

执行结果:

SQL中UNION关键字怎么用

  可以看到UNION关联的去除了重复项,而UNION ALL查询出了所有的值,没有去除重复数据。

以上是“SQL中UNION关键字怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

SQL中UNION关键字怎么用

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

SQL UNION和UNION ALL操作符怎么使用

SQL UNION和UNION ALL操作符用于合并两个或多个SELECT语句的结果集。UNION操作符用于将两个或多个SELECT语句的结果集合并为一个结果集,并去除重复的行。它的语法如下:SELECT column1, column2,
2023-10-12

SQL LEFT JOIN关键字怎么用

LEFT JOIN关键字用于从左表和右表中返回所有匹配行和左表中的所有行。语法:```SELECT 列名FROM 左表LEFT JOIN 右表 ON 左表.列名 = 右表.列名;```例如,有两个表A和B,表A包含以下列:id,name,a
2023-10-11

sql中union怎么用

union 操作将来自不同表的行合并为一个结果集,去除重复行。语法格式为:select column_list from table1 union select column_list from table2...,其中 table1 和
sql中union怎么用
2024-05-02

SQL的Merge关键字怎么使用

这篇文章主要介绍“SQL的Merge关键字怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“SQL的Merge关键字怎么使用”文章能帮助大家解决问题。Merge关键字是一个神奇的DML关键字。它
2023-06-27

Python中nonlocal关键字与global关键字怎么用

小编给大家分享一下Python中nonlocal关键字与global关键字怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!python引用变量的顺序: 当前作
2023-06-29

SQL中的union和union all怎么使用

这篇文章主要介绍了SQL中的union和union all怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇SQL中的union和union all怎么使用文章都会有所收获,下面我们一起来看看吧。概念MyS
2023-03-01

sql中union all怎么使用

在SQL中,UNION ALL用于合并两个或多个SELECT语句的结果集,并返回一个包含所有记录的结果集。与UNION不同的是,UNION ALL不会去除重复的记录。使用UNION ALL的语法如下:```SELECT column1, c
2023-08-25

sql中的Union All怎么用

union all 运算符在 sql 中组合 select 结果集,但不消除重复行,用法包括合并结果集和保留重复行。SQL 中的 UNION ALLUNION ALL 是 SQL 中一个用于组合两个或多个 SELECT 语句结果集的运算符
sql中的Union All怎么用
2024-05-10

SQL中distinct关键字的作用是什么

在SQL中,DISTINCT关键字用于返回唯一不重复的记录。当在SELECT语句中使用DISTINCT关键字时,查询结果将只返回不重复的值。它可以应用于单个列或多个列。DISTINCT关键字可以用于任何数据类型,包括数值、字符串和日期。它通
2023-09-14

sql中的union怎么使用

在SQL中,UNION是一种用于合并两个或多个SELECT语句结果集的操作符。使用UNION时,要求两个SELECT语句的列数和数据类型必须匹配。UNION的基本语法如下:```SELECT 列名 FROM 表1UNIONSELECT 列名
2023-09-12

SQL中use关键字的作用是什么

在SQL中,USE关键字用来指定要使用的数据库。通过使用USE关键字,可以切换当前会话所操作的数据库,使得后续的SQL语句都会在指定的数据库上执行。例如,使用以下语句可以切换到名为"mydatabase"的数据库:USE mydataba
SQL中use关键字的作用是什么
2024-04-09

解析SQL中使用distinct关键字

SQL中distinct用法详解在SQL数据库中,我们经常会遇到需要去除重复数据的情况。此时,我们可以使用distinct关键字,它能够帮助我们去除重复数据,使得查询结果更加清晰和准确。distinct的基本使用方法非常简单,只需要在s
解析SQL中使用distinct关键字
2024-02-22

python中and关键字怎么用

这篇文章主要介绍了python中and关键字怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python中and关键字怎么用文章都会有所收获,下面我们一起来看看吧。1、为了表示多种条件同时满足,可以使用an
2023-06-30

C++中explicit关键字怎么用

这篇文章给大家分享的是有关C++中explicit关键字怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1 隐式转换C++ 构造函数默认类型为implicit,定义时既可以显示说明也可以默认不加该标识符。//
2023-06-22

Golang中omitempty关键字怎么用

本篇内容介绍了“Golang中omitempty关键字怎么用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!用法熟悉 Golang 的朋友对于
2023-06-26

Java中Native关键字怎么用

这篇文章将为大家详细讲解有关Java中Native关键字怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、Java中Native关键字的语法本机代码的语法与普通函数定义相同,在函数开头添加了“nat
2023-06-22

编程热搜

目录