Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

SQL 教程

SQL 主页 SQL 简介 SQL 语法 SQL 选择 SQL 选择 Distinct SQL Where SQL Order By SQL And SQL Or SQL Not SQL 插入到 SQL 空值 SQL 更新 SQL 删除 SQL 选择 Top SQL 聚合函数 SQL Min 和 Max SQL 计数 SQL Sum SQL Avg SQL Like SQL 通配符 SQL In SQL Between SQL 别名 SQL 连接 SQL 内连接 SQL 左连接 SQL 右连接 SQL 全连接 SQL 自连接 SQL Union SQL Group By SQL Having SQL Exists SQL Any, All SQL 选择到 SQL 插入到选择 SQL Case SQL 空函数 SQL 存储过程 SQL 注释 SQL 运算符

SQL 数据库

SQL 创建 DB SQL 删除 DB SQL 备份 DB SQL 创建表 SQL 删除表 SQL 更改表 SQL 约束 SQL 非空 SQL 唯一 SQL 主键 SQL 外键 SQL 检查 SQL 默认值 SQL 索引 SQL 自动增量 SQL 日期 SQL 视图 SQL 注入 SQL 托管 SQL 数据类型

SQL 参考

SQL 关键字 MySQL 函数 SQL Server 函数 MS Access 函数 SQL 快速参考

SQL 示例

SQL 示例 SQL 编辑器 SQL 测验 SQL 练习 SQL Server SQL 集训营 SQL 证书

SQL UNION 运算符


SQL UNION 运算符

SQL UNION 运算符用于组合两个或多个 SELECT 语句的结果集。

  • 每个 UNION 中的 SELECT 语句必须具有相同数量的列
  • 这些列还必须具有类似的数据类型
  • 每个 SELECT 语句中的列还必须按相同的顺序排列

UNION 语法

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

UNION ALL 语法

默认情况下,UNION 运算符仅选择不同的值。若要允许重复值,请使用 UNION ALL

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

注意: 结果集中的列名通常等于第一个 SELECT 语句中的列名。


演示数据库

在本教程中,我们将使用众所周知的 Northwind 示例数据库。

以下是“客户”表中的选择

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico

以及“供应商”表中的选择

SupplierID SupplierName ContactName Address City PostalCode Country
1 Exotic Liquid Charlotte Cooper 49 Gilbert St. London EC1 4SD UK
2 New Orleans Cajun Delights Shelley Burke P.O. Box 78934 New Orleans 70117 USA
3 Grandma Kelly's Homestead Regina Murphy 707 Oxford Rd. Ann Arbor 48104 USA


SQL UNION 示例

以下 SQL 语句从“客户”和“供应商”表中返回城市(仅不同的值)

示例

SELECT City FROM Customers
UNION
UNION
SELECT City FROM Suppliers
ORDER BY City;

注意: 如果某些客户或供应商位于同一个城市,每个城市只会列出一次,因为 UNION 仅选择不同的值。使用 UNION ALL 还可以选择重复值!


SQL UNION ALL 示例

以下 SQL 语句从“客户”和“供应商”表中返回城市(包括重复值)

示例

SELECT City FROM Customers
UNION ALL
UNION
SELECT City FROM Suppliers
ORDER BY City;

SQL UNION 与 WHERE

以下 SQL 语句从“客户”和“供应商”表中返回德国城市(仅不同的值)

示例

SELECT City, Country FROM Customers
WHERE Country='Germany'
UNION
UNION
WHERE Country='Germany'
SELECT City FROM Suppliers
ORDER BY City;

SELECT City, Country FROM Suppliers

WHERE Country='Germany';

示例

SELECT City, Country FROM Customers
WHERE Country='Germany'
UNION ALL
UNION
WHERE Country='Germany'
SELECT City FROM Suppliers
ORDER BY City;

SQL UNION ALL 与 WHERE

以下 SQL 语句从“客户”和“供应商”表中返回德国城市(包括重复值)

示例

另一个 UNION 示例
以下 SQL 语句列出所有客户和供应商
UNION
SELECT 'Customer' AS Type, ContactName, City, Country
FROM Customers
ORDER BY City;

UNION


×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.