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

MySQL之使用UNION和UNION ALL合并兩個(gè)或多個(gè)SELECT語句的結(jié)果集

 更新時(shí)間:2024年04月02日 15:11:18   作者:Hello 阿月  
這篇文章主要介紹了MySQL之使用UNION和UNION ALL合并兩個(gè)或多個(gè)SELECT語句的結(jié)果集,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

使用UNION和UNION ALL合并兩個(gè)或多個(gè)SELECT語句的結(jié)果集

在MySQL中, UNIONUNION ALL 是用于合并兩個(gè)或多個(gè) SELECT 語句的結(jié)果集的操作符。

UNION 會(huì)去除結(jié)果集中的重復(fù)行,返回唯一的行,而 UNION ALL 會(huì)返回所有的行,包括重復(fù)行。

舉個(gè)通用的例子

SELECT column1, column2, ...
FROM table1
WHERE condition
UNION
SELECT column1, column2, ...
FROM table2
WHERE condition;
  • SELECT column1, column2, ...: 指定要查詢的列。
  • FROM table: 指定要查詢的表。
  • WHERE condition: 指定篩選條件(可選)。

注意事項(xiàng):

UNION 連接的兩個(gè) SELECT 語句必須包含相同數(shù)量和類型的列,列的順序也必須相同。

默認(rèn)情況下,UNION 會(huì)去除重復(fù)的行。如果要包含重復(fù)的行,可以使用 UNION ALL。

使用 UNIONUNION ALL 時(shí),結(jié)果集的列名是由第一個(gè) SELECT 語句中的列名決定的,因此要確保兩個(gè) SELECT 語句中的列名和類型相匹配。

舉個(gè)實(shí)際的例子

假設(shè)有兩個(gè)表 employees1employees2

包含相同的列結(jié)構(gòu)和部分重復(fù)數(shù)據(jù),然后使用 UNIONUNION ALL 進(jìn)行查詢和合并。

創(chuàng)建兩個(gè)表并插入一些數(shù)據(jù)

-- 創(chuàng)建 employees1 表
CREATE TABLE employees1 (
    employee_id INT,
    first_name VARCHAR(50),
    last_name VARCHAR(50)
);

-- 插入數(shù)據(jù)到 employees1 表
INSERT INTO employees1 VALUES
(1, 'John', 'Doe'),
(2, 'Jane', 'Smith'),
(3, 'Bob', 'Johnson'),
(4, 'Alice', 'Doe');

-- 創(chuàng)建 employees2 表
CREATE TABLE employees2 (
    employee_id INT,
    first_name VARCHAR(50),
    last_name VARCHAR(50)
);

-- 插入數(shù)據(jù)到 employees2 表,包含一些與 employees1 表重復(fù)的數(shù)據(jù)
INSERT INTO employees2 VALUES
(3, 'Bob', 'Johnson'),
(4, 'Alice', 'Doe'),
(5, 'Eva', 'Williams');

使用 UNION 合并這兩個(gè)表的數(shù)據(jù):

-- 使用 UNION 合并,去除重復(fù)行
SELECT employee_id, first_name, last_name
FROM employees1
UNION
SELECT employee_id, first_name, last_name
FROM employees2;

結(jié)果如下:

+-------------+------------+-----------+
| employee_id | first_name | last_name |
+-------------+------------+-----------+
| 1           | John       | Doe       |
| 2           | Jane       | Smith     |
| 3           | Bob        | Johnson   |
| 4           | Alice      | Doe       |
| 5           | Eva        | Williams  |
+-------------+------------+-----------+

可以看到,UNION 自動(dòng)去除了重復(fù)的行。

使用 UNION ALL 合并這兩個(gè)表的數(shù)據(jù):

-- 使用 UNION ALL 合并,包含重復(fù)行
SELECT employee_id, first_name, last_name
FROM employees1
UNION ALL
SELECT employee_id, first_name, last_name
FROM employees2;

結(jié)果如下:

+-------------+------------+-----------+
| employee_id | first_name | last_name |
+-------------+------------+-----------+
| 1           | John       | Doe       |
| 2           | Jane       | Smith     |
| 3           | Bob        | Johnson   |
| 4           | Alice      | Doe       |
| 3           | Bob        | Johnson   |
| 4           | Alice      | Doe       |
| 5           | Eva        | Williams  |
+-------------+------------+-----------+

可以看到

  • UNION ALL 保留了所有行,包括重復(fù)的行。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • MySQL讀取JSON轉(zhuǎn)換的方式

    MySQL讀取JSON轉(zhuǎn)換的方式

    這篇文章主要介紹了MySQL讀取JSON轉(zhuǎn)換的方式,本文給大家分享兩種方式給大家講解處理方式,結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-03-03
  • mysql遠(yuǎn)程登錄root賬戶報(bào)錯(cuò)1045的解決

    mysql遠(yuǎn)程登錄root賬戶報(bào)錯(cuò)1045的解決

    這篇文章主要介紹了mysql遠(yuǎn)程登錄root賬戶報(bào)錯(cuò)1045的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • MySQL8.x登陸root用戶突然提示mysql_native_password的實(shí)現(xiàn)

    MySQL8.x登陸root用戶突然提示mysql_native_password的實(shí)現(xiàn)

    本文主要介紹了MySQL 8.x登陸root用戶突然提示mysql_native_password,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08
  • MySQL安裝出現(xiàn)The?configuration?for?MySQL?Server?8.0.28?has?failed.?You?can...錯(cuò)誤的解決辦法

    MySQL安裝出現(xiàn)The?configuration?for?MySQL?Server?8.0.28?has

    這篇文章主要給大家介紹了MySQL安裝出現(xiàn)The?configuration?for?MySQL?Server?8.0.28?has?failed.?You?can...錯(cuò)誤的解決辦法,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-09-09
  • Mysql中count帶條件計(jì)數(shù)實(shí)例代碼

    Mysql中count帶條件計(jì)數(shù)實(shí)例代碼

    這篇文章主要給大家介紹了關(guān)于Mysql中count帶條件計(jì)數(shù)的相關(guān)資料,Mysql中count()函數(shù)的一般用法是統(tǒng)計(jì)字段非空的記錄數(shù),所以可以利用這個(gè)特點(diǎn)來進(jìn)行條件統(tǒng)計(jì),需要的朋友可以參考下
    2023-09-09
  • MySQL 關(guān)閉子表的外鍵約束檢察方法

    MySQL 關(guān)閉子表的外鍵約束檢察方法

    下面小編就為大家?guī)硪黄狹ySQL 關(guān)閉子表的外鍵約束檢察方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-03-03
  • Mac 安裝和卸載 Mysql5.7.11 的方法

    Mac 安裝和卸載 Mysql5.7.11 的方法

    本文給大家介紹Mac 安裝和卸載 Mysql5.7.11 的方法,本文介紹的非常詳細(xì),具有參考借鑒價(jià)值,感興趣的朋友一起學(xué)習(xí)吧
    2016-03-03
  • 將數(shù)據(jù)插入到MySQL表中的詳細(xì)教程

    將數(shù)據(jù)插入到MySQL表中的詳細(xì)教程

    這篇文章主要介紹了將數(shù)據(jù)插入到MySQL表中的詳細(xì)教程,文中給出了在PHP腳本中操作的示例,是MySQL入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-05-05
  • MySQL中的行級(jí)鎖定示例詳解

    MySQL中的行級(jí)鎖定示例詳解

    這篇文章主要給大家介紹了關(guān)于MySQL中行級(jí)鎖定的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Advanced SQL Injection with MySQL

    Advanced SQL Injection with MySQL

    Advanced SQL Injection with MySQL...
    2006-12-12

最新評(píng)論