欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SQL UNION運算符及其應(yīng)用場景深入探究

 更新時間:2023年12月05日 09:04:14   作者:小萬哥  
這篇文章主要為大家介紹了SQL UNION運算符及其應(yīng)用場景示例深入探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

SQL UNION運算符

SQL UNION運算符用于組合兩個或多個SELECT語句的結(jié)果集。

  • 每個UNION中的SELECT語句必須具有相同數(shù)量的列。
  • 列的數(shù)據(jù)類型也必須相似。
  • 每個SELECT語句中的列也必須按照相同的順序排列。

UNION語法

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

UNION ALL語法UNION運算符默認(rèn)僅選擇不同的值。為了允許重復(fù)的值,請使用UNION ALL

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

注意:結(jié)果集中的列名通常等于第一個*SELECT*語句中的列名。

演示數(shù)據(jù)庫

在本教程中,我們將使用著名的Northwind示例數(shù)據(jù)庫。

Customers表部分選擇:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.05021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.05023Mexico

Suppliers表部分選擇:

SupplierIDSupplierNameContactNameAddressCityPostalCodeCountry
1Exotic LiquidCharlotte Cooper49 Gilbert St.LondonEC1 4SDUK
2New Orleans Cajun DelightsShelley BurkeP.O. Box 78934New Orleans70117USA
3Grandma Kelly's HomesteadRegina Murphy707 Oxford Rd.Ann Arbor48104USA

SQL UNION示例

以下SQL語句從“Customers”和“Suppliers”表中返回城市(僅不同的值):

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

注意:如果一些客戶或供應(yīng)商具有相同的城市,每個城市將只列出一次,因為*UNION僅選擇不同的值。使用UNION ALL*也選擇重復(fù)的值!

SQL UNION ALL示例

以下SQL語句從“Customers”和“Suppliers”表中返回城市(還包括重復(fù)的值):

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

帶有WHERE的SQL UNION

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

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

帶有WHERE的SQL UNION ALL

以下SQL語句從“Customers”和“Suppliers”表中返回德國的城市(還包括重復(fù)的值):

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

另一個UNION示例

以下SQL語句列出了所有客戶和供應(yīng)商:

SELECT 'Customer' AS Type, ContactName, City, Country
FROM Customers
UNION
SELECT 'Supplier', ContactName, City, Country
FROM Suppliers;

請注意上面的AS Type - 它是一個別名。SQL別名用于給表或列一個臨時的名稱。別名僅在查詢的持續(xù)時間內(nèi)存在。因此,這里我們創(chuàng)建了一個名為“Type”的臨時列,其中列出了聯(lián)系人是“Customer”還是“Supplier”。

SQL GROUP BY語句

GROUP BY語句將具有相同值的行分組為摘要行,通常與聚合函數(shù)一起使用,以根據(jù)一個或多個列對結(jié)果集進(jìn)行分組。

GROUP BY語法

SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
ORDER BY column_name(s);

演示數(shù)據(jù)庫

以下是Northwind示例數(shù)據(jù)庫中“Customers”表的一部分選擇:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.05021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.05023Mexico
4Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

SQL GROUP BY示例

以下SQL語句列出了每個國家的客戶數(shù)量:

SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country;

以下SQL語句列出了每個國家的客戶數(shù)量,按高到低排序:

SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country
ORDER BY COUNT(CustomerID) DESC;

演示數(shù)據(jù)庫

以下是Northwind示例數(shù)據(jù)庫中“Orders”表的一部分選擇:

OrderIDCustomerIDEmployeeIDOrderDateShipperID
102489051996-07-043
102498161996-07-051
102503441996-07-082

以及“Shippers”表的一部分選擇:

ShipperIDShipperName
1Speedy Express
2United Package
3Federal Shipping

帶有JOIN的GROUP BY示例

以下SQL語句列出了每個承運人發(fā)送的訂單數(shù)量:

SELECT Shippers.ShipperName, COUNT(Orders.OrderID) AS NumberOfOrders FROM Orders
LEFT JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID
GROUP BY ShipperName;

以上就是SQL UNION運算符及其應(yīng)用場景深入探究的詳細(xì)內(nèi)容,更多關(guān)于SQL UNION運算符的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • MySQL字符串使用STR_TO_DATE()函數(shù)舉例說明

    MySQL字符串使用STR_TO_DATE()函數(shù)舉例說明

    在 MySQL 中,STR_TO_DATE()函數(shù)用于將一個字符串轉(zhuǎn)換為日期或時間格式,它可以幫助我們將字符串解析為日期類型,以便在查詢中進(jìn)行比較、計算和顯示,這篇文章主要給大家介紹了關(guān)于MySQL字符串使用STR_TO_DATE()函數(shù)的相關(guān)資料,需要的朋友可以參考下
    2024-04-04
  • mysql如何將表結(jié)構(gòu)導(dǎo)出到excel

    mysql如何將表結(jié)構(gòu)導(dǎo)出到excel

    這篇文章主要介紹了mysql如何將表結(jié)構(gòu)導(dǎo)出到excel,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下
    2020-09-09
  • mysql?explain中key_len的含義以及計算方法

    mysql?explain中key_len的含義以及計算方法

    通常在優(yōu)化SQL查詢的時候,我們都會使用explain分析SQL執(zhí)行計劃,下面這篇文章主要給大家介紹了關(guān)于mysql?explain中key_len的含義以及計算方法的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-03-03
  • mysql語法時采用了雙引號““的錯誤問題

    mysql語法時采用了雙引號““的錯誤問題

    錯誤原因:使用雙引號定義表名和列名導(dǎo)致MySQL報錯,應(yīng)使用反引號,修改方案:將雙引號改為反引號,避免語法沖突,總結(jié):在MySQL中,正確使用反引號引用標(biāo)識符,確保SQL語句符合MySQL語法規(guī)則
    2024-10-10
  • Windows下MySQL安裝配置方法圖文教程

    Windows下MySQL安裝配置方法圖文教程

    這篇文章主要為大家分享了Windows下MySQL安裝配置方法圖文教程,感興趣的朋友可以參考一下
    2016-06-06
  • MySQL表內(nèi)連和外連的具體使用

    MySQL表內(nèi)連和外連的具體使用

    我們在使用MySQL的時候,經(jīng)常涉及到內(nèi)連接和外連接的應(yīng)用,本文就來詳細(xì)的介紹一下MySQL表內(nèi)連和外連的具體使用,感興趣的可以了解一下
    2023-10-10
  • MySQL配置文件my.cnf中文版對照

    MySQL配置文件my.cnf中文版對照

    MySQL配置文件my.cnf中文版,使用mysql的朋友可以參考下,了解每個參數(shù)的重要性。
    2011-09-09
  • 教你巧用mysql位運算解決多選值存儲的問題

    教你巧用mysql位運算解決多選值存儲的問題

    如果你不知道什么是位運算的話,那么請你先去看看基礎(chǔ)的C語言教程吧,下面這篇文章主要給大家介紹了關(guān)于如何巧用mysql位運算解決多選值存儲問題的相關(guān)資料,需要的朋友可以參考下
    2022-02-02
  • Mysql樹形表的2種查詢解決方案(遞歸與自連接)

    Mysql樹形表的2種查詢解決方案(遞歸與自連接)

    MySQL作為一個關(guān)系型數(shù)據(jù)庫,存儲著許多的數(shù)據(jù)信息,在實際應(yīng)用中經(jīng)常會遇到需要存儲樹形結(jié)構(gòu)數(shù)據(jù)的情境,例如部門結(jié)構(gòu)、商品分類等,這篇文章主要給大家介紹了關(guān)于Mysql樹形表的2種查詢解決方案,分別是遞歸與自連接,需要的朋友可以參考下
    2023-11-11
  • 詳解MySQL批量入庫的幾種方式

    詳解MySQL批量入庫的幾種方式

    本文主要介紹了詳解MySQL批量入庫的幾種方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02

最新評論