選單
×
   ❮     
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 Intro SQL Syntax SQL Select SQL Select Distinct SQL Where SQL Order By SQL And SQL Or SQL Not SQL Insert Into SQL Null Values SQL Update SQL Delete SQL Select Top SQL Aggregate Functions SQL Min and Max SQL Count SQL Sum SQL Avg SQL Like SQL Wildcards SQL In SQL Between SQL Aliases SQL Joins SQL Inner Join SQL Left Join SQL Right Join SQL Full Join SQL Self Join SQL Union SQL Group By SQL Having SQL Exists SQL Any, All SQL Select Into SQL Insert Into Select SQL Case SQL Null Functions SQL Stored Procedures SQL Comments SQL Operators

SQL 資料庫

SQL Create DB SQL Drop DB SQL Backup DB SQL Create Table SQL Drop Table SQL Alter Table SQL Constraints SQL Not Null SQL Unique SQL Primary Key SQL Foreign Key SQL Check SQL Default SQL Index SQL Auto Increment SQL Dates SQL Views SQL Injection SQL Hosting SQL Data Types

SQL 參考

SQL 關鍵字 MySQL 函式 SQL Server 函式 MS Access 函式 SQL 快速參考

SQL 示例

SQL 示例 SQL 編輯器 SQL 測驗 SQL 練習 SQL Server SQL Bootcamp SQL 證書

SQL UNION 運算子


SQL UNION 運算子

SQL UNION 運算子用於組合兩個或多個 SELECT 語句的結果集。

  • UNION 中的每個 SELECT 語句都必須具有相同數量的列。
  • 列也必須具有相似的資料型別。
  • 每個 SELECT 語句中的列也必須以相同的順序排列。

UNION 語法

SELECT column_name(s) FROM table1
並集
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 示例資料庫。

以下是“Customers”表中的一部分資料:

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

以及“Suppliers”表中的一部分資料:

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 語句返回“Customers”和“Suppliers”表中所有的城市(僅不重複值):

示例

SELECT City FROM Customers
並集
SELECT City FROM Suppliers
ORDER BY City;
自己動手試一試 »

注意: 如果一些客戶或供應商有相同的城市,每個城市只會列出一次,因為 UNION 只選擇不重複的值。使用 UNION ALL 也可以選擇重複值!


SQL UNION ALL 示例

以下 SQL 語句返回“Customers”和“Suppliers”表中所有的城市(包括重複值):

示例

SELECT City FROM Customers
UNION ALL
SELECT City FROM Suppliers
ORDER BY City;
自己動手試一試 »

SQL UNION With WHERE

以下 SQL 語句返回“Customers”和“Suppliers”表中所有的德國城市(僅不重複值):

示例

SELECT City, Country FROM Customers
WHERE Country='Germany'
並集
SELECT City, Country FROM Suppliers
WHERE Country='Germany'
ORDER BY City;
自己動手試一試 »

SQL UNION ALL With WHERE

以下 SQL 語句返回“Customers”和“Suppliers”表中所有的德國城市(包括重複值):

示例

SELECT City, Country FROM Customers
WHERE Country='Germany'
UNION ALL
SELECT City, Country FROM Suppliers
WHERE Country='Germany'
ORDER BY City;
自己動手試一試 »

另一個 UNION 示例

以下 SQL 語句列出了所有客戶和供應商:

示例

SELECT 'Customer' AS Type, ContactName, City, Country
FROM Customers
並集
SELECT 'Supplier', ContactName, City, Country
FROM Suppliers;
自己動手試一試 »

注意上面使用的“AS Type”——這是一個別名。SQL 別名用於給表或列起一個臨時名稱。別名只在查詢期間存在。因此,這裡我們建立了一個名為“Type”的臨時列,用於標識聯絡人是“Customer”(客戶)還是“Supplier”(供應商)。


×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援