SQL零基础入门教程,贼拉详细!贼拉简单! 速通数据库期末考!(九)

UNION ALL

UNION ALL 用于合并两个或多个 SELECT 语句的结果
请注意,UNION ALL 合并的每个 SELECT 语句必须是查询相同数量,相同数据类型的字段,且顺序也必须一致。另外结果集中的列名总是等于 UNION ALL 中第一个 SELECT 语句中的列名

语法:

SELECT column_name(s) FROM table1
UNION ALL
SELECT column_name(s) FROM table2;

示例:
从students学生数据表查询理科三班和文科三班的学生id,学生姓名,班级

写法一:
使用我们之前的学习的 WHERE … IN … 方式:

SELECT id,name,clazz
FROM students
WHERE clazz IN ('理科三班','文科三班');

写法二:
使用 UNION ALL 结合两个 SELECT 查询的方式:

SELECT id,name,clazz
FROM students
WHERE clazz = '理科三班'
UNION ALL
SELECT id,name,clazz
FROM students
WHERE clazz = '文科三班';

观察这两种写法的结果,写法一的结果中理科三班和文科三班的数据行是交错分布的,但是写法二的结果明显是分别从students表中查询出两部分结果,再纵向拼接而成的,这也是使用 UNION ALL的前提是每个SELECT查询的字段完全一致的原因。

带有 ORDER BY 的 UNION ALL

思考一个问题,如果我希望在 UNION ALL 后的结果中进行排序操作,那是不是每个 SELECT 语句都要加 ORDER BY 呢?
来测试一下:
从students学生数据表查询理科三班和文科三班的学生id,学生姓名,班级,并且按学生ID升序排列

错误写法:

SELECT id,name,clazz
FROM students
WHERE clazz = '理科三班'
ORDER BY id
UNION ALL
SELECT id,name,clazz
FROM students
WHERE clazz = '文科三班'
ORDER BY id;

image.png

很明显,这种写法是不行的,报错 Incorrect usage of UNION and ORDER BY,意思为 不正确地使用UNION和ORDER BY

正确写法:

SELECT id,name,clazz
FROM students
WHERE clazz = '理科三班'
UNION ALL
SELECT id,name,clazz
FROM students
WHERE clazz = '文科三班'
ORDER BY id;

image.png

使用UNION命令时需要注意,只能在最后使用一个ORDER BY命令,是将两个查询结果合在一起之后,再进行排序!

UNION

UNION 同样用于合并两个或多个 SELECT 语句的结果。与 UNION ALL 唯一不同的地方在于 UNION 对查询结果进行去重操作,对所有重复出现的相同数据行只保留一行结果,其用法与 UNION ALL 完全一致。

此处不再过多赘述,大家自己尝试一下即可。

本专栏将持续更新,对数据库SQL感兴趣的同学可以关注一下,谢谢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/149773.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

xlua源码分析(三)C#访问lua的映射

xlua源码分析(三)C#访问lua的映射 上一节我们主要分析了lua call C#的无wrap实现。同时我们在第一节里提到过,C#使用LuaTable类持有lua层的table,以及使用Action委托持有lua层的function。而在xlua的官方文档中,推荐使…

Vatee万腾科技创新之舟:Vatee数字化力量引领未来的独特路径

在数字化的大潮中,Vatee万腾如一艘科技创新之舟,在未来的海洋中翱翔。vatee万腾以强大的数字化力量为桨,引领着行业向着新的、独特的路径前行,塑造着数字时代的未来。 Vatee万腾不仅仅是一家科技公司,更是一艘创新之舟…

光伏拉晶厂RFID智能化生产工序管理

一、项目背景 随着全球能源短缺和气候变暖的挑战日益突显,清洁能源已成为国内能源发展的主要目标之一,作为清洁能源的重要组成部分,光伏行业在过去几十年中取得了巨大的发展,成为我国的战略性新兴产业之一。在智能制造的大环境下…

Oracle EBS 重新打开库存会期间

由库存某些账务用户操作错误,如:汇率错误、单位转换错误、BOM单据用量错误,需要反向操作纠正少量而有影响成本比较大的数据。但是,库存会计期已经关闭,需要重新打开库存会计期。根据官方文整理一份重新打开库存期间的脚本: 测试Oracle EBS版本: RDBMS : 12.1.0.2.0 Orac…

Linux:安装软件的两种方式rpm和yum

一、rpm方式 1、简单介绍 RPM是RedHat Package Manager的缩写,它是Linux上打包和安装的工具。通过rpm打包的文件扩展名是.RPM。这个安装包就类似Windows系统中的.exe文件。rpm工具实现Linux上软件的离线安装。 2、软件相关信息的查询命令 查询Linux系统上所有已…

IIC总线逻辑

一、 我们习以为常的IIC通常是什么样子? 在我们研发/应用工程师眼中,IIC的形象通常是如图这样的吧?(你们说是不是?) 是的,对于理想的硬件调程序,这个层…

Zookeeper学习笔记(2)—— Zookeeper API简单操作

前置知识&#xff1a;Zookeeper学习笔记&#xff08;1&#xff09;—— 基础知识-CSDN博客 Zookeeper集群搭建部分 前提&#xff1a;保证zookeeper集群处于启动状态 环境搭建 依赖配置 <dependencies><dependency><groupId>junit</groupId><arti…

HarmonyOS4.0系列——01、下载、安装、配置环境、搭建页面以及运行示例代码

HarmonyOS4.0应用开发 安装编辑器 这里安装windows版本为例 安装依赖 打开DevEco Studio 这八项全部打钩即可开始编写代码&#xff0c;如果存在x&#xff0c;需要安装正确的库即可 开发 点击Create Project 选择默认模板——next Model部分分为Stage和FA两个应用模型&…

【广州华锐互动】VR防溺水安全内容体验提高群众防溺水意识

在全球各地&#xff0c;溺水是导致儿童和青少年死亡的主要原因之一。据世界卫生组织的统计&#xff0c;全球每年有超过36万人因溺水而死亡&#xff0c;其中大部分是儿童和青少年。因此&#xff0c;提供有效的防溺水教育和培训至关重要。随着科技的发展&#xff0c;虚拟现实&…

数据库系统原理与实践 笔记 #9

文章目录 数据库系统原理与实践 笔记 #9存储管理与索引文件和记录的组织文件组织定长记录变长记录分槽的页结构文件中记录的组织顺序文件组织多表聚簇文件组织 数据库系统原理与实践 笔记 #9 存储管理与索引 文件和记录的组织 文件组织 数据库是以一系列文件的形式存储的。…

Hive调优

1.参数配置优化 设定Hive参数有三种方式&#xff1a; &#xff08;1&#xff09;配置Hive文件 当修改配置Hive文件的设定后&#xff0c;对本机启动的所有Hive进程都有效&#xff0c;因此配置是全局性的。 一般地&#xff0c;Hive的配置文件包括两部分&#xff1a; a&#xff…

【网络】OSI模型 与 TCP/IP模型 对比

一、OSI模型 OSI模型包含7个层次&#xff0c;从下到上分别是&#xff1a; 1. 物理层&#xff08;Physical Layer&#xff09; - 功能&#xff1a;处理与电子设备物理接口相关的细节&#xff08;如电压、引脚布局、同步&#xff0c;等等&#xff09;。 - 协议&#xff1a;以…

mac苹果电脑需要安装杀毒软件吗?

随着数字时代的发展&#xff0c;计算机安全问题变得越来越重要。而在计算机安全领域中&#xff0c;杀毒软件是一个被广泛讨论的话题。苹果电脑需要安装杀毒软件吗&#xff1f;对于苹果电脑用户来说&#xff0c;他们常常会疑惑自己是否需要安装杀毒软件来保护自己的电脑。本文将…

ATTCK 十大免费 工具和资源

01 eBook: Getting Started with ATT&CK 这本免费电子书将有关威胁情报、检测和分析、对手模拟和红队以及评估和工程的博客文章中的内容汇集到一个方便的软件包中。 02 CALDERA CALDERA是一个网络安全平台&#xff0c;旨在轻松自动化对手仿真&#xff0c;协助手动红队并自…

第二证券:庄家会出现在十大流通股东吗?

近年来&#xff0c;跟着股市投资者的增多和信息的流通&#xff0c;庄家这一概念备受注重。庄家是指具有健旺资金实力、掌控金融商场的财团或个人&#xff0c;运用商场上的信息优势&#xff0c;通过投机办法获取高额收益。那么&#xff0c;庄家会出现在十大流通股东里面吗&#…

远程执行ssh脚本

sshpass -p 123456 ssh root10.1.10.18 "/root/start.sh"sshpass: 这是一个工具&#xff0c;用于提供密码给 ssh 命令&#xff0c;以便无需手动输入密码就能通过 SSH 连接到远程服务器。 -p ‘123456’: 这是 sshpass 命令的选项&#xff0c;指定了连接时使用的密码…

Zabbix实现故障自愈

一、简介 Zabbix agent 可以运行被动检查和主动检查。 在被动检查模式中 agent 应答数据请求。Zabbix server&#xff08;或 proxy&#xff09;询求数据&#xff0c;例如 CPU load&#xff0c;然后 Zabbix agent 返还结果。 主动检查处理过程将相对复杂。Agent 必须首先从 Z…

C++初阶 | [四] 类和对象(下)

摘要&#xff1a;初始化列表&#xff0c;explicit关键字&#xff0c;匿名对象&#xff0c;static成员&#xff0c;友元&#xff0c;内部类&#xff0c;编译器优化 类是对某一类实体(对象)来进行描述的&#xff0c;描述该对象具有哪些属性、哪些方法&#xff0c;描述完成后就形成…

用Python实现一个全网可下载的Linux命令流程

要将你的 Python 包上传到 PyPI&#xff08;Python Package Index&#xff09;并通过 pip 进行安装&#xff0c;可以按照以下步骤进行&#xff1a; 步骤 1: 创建项目结构 创建一个包含以下结构的目录&#xff1a; mycommand/ ├── mycommand/ │ ├── __init__.py │ └─…

HarmonyOS ArkTS语言,运行Hello World(二)

一、认识DevEco Studio界面 进入IDE后&#xff0c;我们首先了解一下基础的界面。整个IDE的界面大致上可以分为四个部分&#xff0c;分别是代码编辑区、通知栏、工程目录区以及预览区。 代码编辑区 1、中间的是代码编辑区&#xff0c;你可以在这里修改你的代码&#xff0c;以…