mysql 组合查询_mysql组合查询

article/2025/10/3 18:57:55

使用UNION

多数SQL查询都只包含一个或多个表中返回数据的单条SELECT语句。MySQL也允许执行多个查询(多条SELECT语句),并将结果作为单个查询结果集返回。这些组合查询通常称为并(union)

有两种情况需要使用组合查询:

在单个表查询中从不同的表返回类似结构的数据;

对单个表执行多个查询,按单个查询返回数据。

组合查询和多个WHERE条件:多数情况下,组合相同表的两个查询完成的工作与具有多个WHERE子句条件的单条查询完成的工作相同。

可用UNION操作符来组合数条SQL查询,所需要做的就是给出每条SELECT语句,在各条语句之间放上关键字UNION

例如:

​假设需要价格小于等于5的所有物品的一个列表,而且还想包括供应商1001和1002生产的所有物品,当然可以利用WHERE子句来完成,不过这里我们使用UNION

这里是两条语句的组合

SELECT vend_id, prod_id, prod_price FROM products WHERE prod_price <= 5;

1b07b154d4f09391c0603341eefb5ce9.png

SELECT vend_id, prod_id, prod_price FROM products WHERE vend_id IN (1001, 1002);

5fd253d8857e4e8c0c3eb1ccf3dd3c63.png

可以使用下面的语句

SELECT vend_id, prod_id, prod_price FROM products WHERE prod_price <= 5 UNION SELECT vend_id, prod_id, prod_price FROM products WHERE vend_id IN (1001, 1002);

d4c5bcf93c8b2a2f48755611e4984894.png

同样,可以使用WHERE子句

SELECT vend_id, prod_id, prod_price FROM products WHERE prod_price <= 5 OR vend_id IN (1001, 1002);

UNION规则

UNION必须由两条或两条以上的SELECT语句组成,语句之间用关键字UNION分隔

UNION中的每个查询必须包含相同的列、表达式或聚集函数(各个列不需要以相同的次序列出)

列数据烈性必须兼容:类型不必完全相同,但必须是DBMS可以隐含地转换的类型(不同数值类型或不同的日期类型)

包含或取消重复的行

UNION会从查询的结果集中自动去除重复的行,如果想返回所有匹配行,可使用UNION ALL

SELECT vend_id, prod_id, prod_price FROM products WHERE prod_price <= 5 UNION ALL SELECT vend_id, prod_id, prod_price FROM products WHERE vend_id IN (1001, 1002);

d57ecb15a96a93f97b87b6baa05d2977.png

对组合查询结果排序

SELECT语句的输出用ORDER BY子句排序,在用UNION组合查询时,只能使用一条ORDER BY子句。它必须出现在最后一条SELECT语句之后。不允许使用多条ORDER BY子句。

SELECT vend_id, prod_id, prod_price FROM products WHERE prod_price <= 5 UNION SELECT vend_id, prod_id, prod_price FROM products WHERE vend_id IN (1001, 1002) ORDER BY vend_id, prod_price;

6bcb6dc040f34d5acf5d1cbe6173bced.png


http://chatgpt.dhexx.cn/article/KAlbtN7j.shtml

相关文章

SQL学习十一、组合查询

UNION 操作符用于合并两个或多个 SELECT 语句的结果集。 请注意&#xff0c; 1、UNION 内部的每个 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时&#xff0c;每个 SELECT 语句中的列的顺序必须相同。 即多个 SELECT 语句查询出来的结果集要能合并到一起…

【MySQL】联合查询

目录 1、前言 2、联合查询 3、内连接和外连接 4、案例演示 4.1 查询篮球哥每科的成绩 4.2 查询所有同学的总成绩及邮箱 5、自连接 5.1 显示所有计算机原理成绩比java成绩高的同学 6、子查询 6.1 查询出篮球哥的同班同学 6.2 多行子查询 7、合并查询 1、前言 在实际…

数据库组合查询

在使用数据库的过程中&#xff0c;数据的查询是使用最多的&#xff0c;所以&#xff0c;数据的精确查询是一个很重要的问题。以前的数据查询是最简单的数据查询&#xff0c;也从来没想过组合查询的问题&#xff0c;可是在做机房收费系统的时候&#xff0c;遇到了一个很大的问题…

SQL组合查询知识

大多数SQL查询只从一个或者多表中返回数据都是单个select语句。但是SQL server允许多个select语句执行&#xff0c;它返回的结果是一个结果集&#xff0c;需要使用 union 组合 &#xff0c;这些组合一般称为并&#xff08;union&#xff09;和复合查询&#xff08;compound que…

组合查询

今天我们来学习一下组合查询的方法。什么叫组合查询&#xff0c;就是根据自己选择的内容进行数据查询。我们可以根据单个数据查询&#xff0c;也可以根据多个数据查询我们想要的内容。而我今天要讲的是根据学院、年级、班级还有学号和姓名进行查询的方法&#xff0c;我们首先打…

MySQL入门学习:组合查询

一、组合查询 多数SQL查询都只包含从一个或多个表中返回数据的单条SELECT语句。MySQL也允许执行多个查询&#xff08;多条SELECT语句&#xff09;&#xff0c;并将结果作为单个查询结果集返回。这些组合查询通常称为并&#xff08;union&#xff09;或复合查询&#xff08;comp…

SQL数据库的组合查询和统计查询

数据库的组合查询和统计查询 一、实验目的 对数据库进行组合查询和统计查询 二、实验内容 1、加深对SQL语言查询语句的理解 2、熟练掌握数据查询中的分组统计、计算和组合操作方法。 三、实验要求 在本题下面提交基本操作效果截图。 一&#xff0c;组合查询简单查询。 1、…

组合多个查询

紫色代表一级目录 粉红代表二级目录 蓝色代表三级目录 红色代表关键字 橙色代表说明 单查询与组合查询   单查询实例      使用了操作符UNION    组合查询操作符   UNION     UNION 操作符可以组合两个或多个 SELECT 语句的结果&#xff0c;不包含重复的记录。换…

[Mysql] 组合查询

组合查询可以将多个SELECT结果拼接在一起作为最终结果输出(输出组合成单个查询结果集) 当存在多个查询结果符合条件&#xff0c;需要将多个查询结果进行纵向拼接时&#xff0c;就会用到组合查询 如下图所示&#xff0c;如果需要查出的结果包含表A和表B两个部分&#xff0c;则…

MySQL必知必会:组合查询(Union)

本篇文章主要介绍使用Union操作符将多个SELECT查询组合成一个结果集。本文参考《Mysql必知必会》工作实践融合 组合查询 定义 在大多数开发中&#xff0c;使用一条SELECT查询就会返回一个结果集。如果&#xff0c;我们想一次性查询多条SQL语句&#xff0c;并将每一条SELECT查询…

组合查询——union

文章目录 1.组合查询2.创建组合查询2.1 使用union2.2 union规则2.3 包含或取消重复的行2.4 对组合查询结果排序 1.组合查询 组合查询指的是&#xff1a;在Mysql中执行多个查询&#xff0c;并将结果作为单个查询结果集返回。 这些组合查询通常称为并或复合查询。 以下2种情况&…

【SQL自学打卡|DAY13】——组合查询

前言 ❤欢迎大家阅读我的文章呀❤ 今天是SQL必知必会的最后一块练习。 希望你们在我的文章当中能有所收获&#xff01;&#xff01;&#xff01; SLogan:利用有限的时间&#xff0c;撸起袖子加油干&#xff01; 知识点回顾 内联结&#xff1a;inner join。取两列的交集。 外联…

PyCharm取消波浪线、下划线和中划线

默认情况下&#xff0c;PyCharm中如果有无法错误或者不符合PEP8规范代码下面会有波浪线&#xff0c;语法错误波浪线为红色&#xff08;如下图的第10行&#xff09;&#xff0c;不符合PEP8规范为浅黄色波浪线&#xff08;如下图的第8行&#xff09;&#xff0c;见下图&#xff1…

Python中下划线的含义及用法

看代码的时候&#xff0c;经常看到各种变量名带各种下划线&#xff0c;有单下划线、双下划线等&#xff0c;主要有五种下划线&#xff08;按照下划线位置命名类型&#xff09;&#xff1a; 单下划线&#xff1a;_单下划线变量名&#xff1a;_var变量名单下划线&#xff1a;var…

Python 中下划线的 6 个作用

初学者看到 Python 中的下划线 _ 时可能会有些懵圈&#xff0c;不知道这个到底是干什么用的&#xff0c;今天就来盘点一下 Python 中的下划线有哪些用处。以后看到下划线时就可以对号入座了。 1、用在 Python 解释器&#xff0c;表示上一次的执行结果 即使不把 Python 用于编程…

html中的:下划线标签、中划线标签、斜体标记、粗体标记

<!-- 下划线标记 --><b>下划线标签&#xff1a;</b><u>u标签是下划线标签</u><br><!-- 中划线标签 --><b>中划线标题&#xff1a;</b><s>s是中划线标签</s><del>del也是中划线标签</del><br…

多种方法在Markdown加入上划线、中划线、下划线

上划线和下划线不是Markdown自身语法&#xff0c;因此需要一点摸索&#xff0c;特将结果记录于此 中划线 中划线是markdown自身语法&#xff0c;实现起来很简单&#xff1a; ~~中划线~~效果&#xff1a; 中划线 下划线 法一&#xff1a;借助Latex公式 $\underline{\text{…

UILabel,文字添加下划线,中划线

//显示下划线 //中划线 // NSDictionary *attribtDic {NSStrikethroughStyleAttributeName: [NSNumber numberWithInteger:NSUnderlineStyleSingle]}; //下划线 NSDictionary *attribtDic {NSUnderlineStyleAttributeName: [NSNumber numberWithInteger:NSUnderlineS…

CSS文本样式(中划线下划线行高之类的还有color也是)

1.颜色 2.对齐方式 3.首行缩进 4.行高 5.下划线&#xff08;装饰&#xff09; 6.文字跟图片对齐 1.颜色 颜色可以用 单词 表示也可以用 #RGB 表示 RGB代表的就是红绿蓝三种颜色 000000-FFFFFF 或者用 color&#xff1a;rgb&#xff08;0&#xff0…

为文字添加下划线和中划线

Android开发中如何给文字添加下划线和中划线呢&#xff0c;先看一下效果图&#xff1a; 下划线&#xff1a; 中划线&#xff1a; 方式一&#xff1a; //添加下划线 // textView.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG);//添加中划线textView.getPaint().setFl…