SQL Union –UNION演算子に関する包括的なガイド



この記事は、SQLUNION演算子の使用方法に関する詳細なガイドです。この記事では、UNIONとUNIONALLの違いについて例を挙げて説明します。

データベース内のデータを処理するとき、私たちはしばしば集合演算子を使用する傾向があります SQL 、2つ以上のSELECTステートメントを組み合わせて、要件に従ってデータを取得します。 SQL UNIONに関するこの記事では、次の順序でデータを取得するために使用されるUNION演算子について説明します。

始めましょう!





SQL UNION演算子とは何ですか?

名前が示すように、この演算子/句は、2つ以上のSELECTステートメントの結果を組み合わせるために使用されます。ここで、UNIONステートメント内で使用される各SELECTステートメントは、同じ順序で同じ数の列を持っている必要があります。また、SELECTステートメントに存在するすべての列は、同様のデータ型である必要があります。

UNION句は、一意の値のみを出力として提供します。念のため、重複する値が必要な場合は、UNIONALL句を使用する必要があります。



SQL UNIONに関するこの記事に進んで、構文を理解しましょう。

SQLUNION構文

UNION構文

SELECT Column1、Column2、Column3、...、ColumnN FROM Table1 UNION SELECT Column1、Column2、Column3、...、ColumnN FROM Table2

UNIONALL構文

SELECT Column1、Column2、Column3、...、ColumnN FROM Table1 UNION ALL SELECT Column1、Column2、Column3、...、ColumnN FROM Table2

この記事に進んで、UNIONとUNIONALLの違いを理解しましょう。

SQLUNIONとUNIONALLの違い



連合 UNION ALL
2つ以上の結果セットを組み合わせ、重複する値を保持しません。2つ以上の結果セットを組み合わせて、重複する値を保持します。
 構文: 連合
 構文: UNION ALL
SQL UNION -SQL UNION -Edureka

次に、SQL UNIONに関するこの記事では、この演算子を使用するさまざまな方法を理解しましょう。

SQLUNIONおよびUNIONALLの例

理解を深めるために、次の表を検討してさまざまな例を示します。

従業員テーブル

EmpID 名前 EmpAge 郵便番号
1エマ2. 3ベルリン12109ドイツ
2ラフル26ムンバイ400015インド
3Aayra24ニューヨーク10014使用法
4ジョン32ロンドンE1 7AE英国
5デレク29ニューヨーク10012使用法

プロジェクトテーブル

ProjectID 名前 営業日 郵便番号
1プロジェクト110ベルリン12109ドイツ
2プロジェクト27ムンバイ400015インド
3プロジェクト320デリー110006インド
4プロジェクト415ムンバイ400015インド
5プロジェクト528ベルリン12109ドイツ

例から始めましょう。

SQLUNIONの例

UNION演算子の例

Employees andProjectsテーブルから個別の都市を取得するクエリを記述します。

SELECT City FROM Employees UNION SELECT City FROM Projects ORDER BY City

出力:

ベルリン

デリー

Javaでディープコピーする方法

ロンドン

ムンバイ

ニューヨーク

UNIONALL演算子の例

Employees andProjectsテーブルから都市を取得するクエリを記述します。ここでは、重複する値を含める必要があります。

SELECT City FROM Employees UNION ALL SELECT City FROM Projects ORDER BY City

出力:

ベルリン

ベルリン

ベルリン

デリー

ロンドン

ムンバイ

ムンバイ

ムンバイ

ニューヨーク

ニューヨーク

次のこの記事では、SQLエイリアスでUNION句を使用する方法を理解しましょう。

SQLエイリアスを使用したUNION

SQLエイリアスが使用されますテーブルまたは列に一時的な名前を付けます。それでは、すべての一意の従業員とプロジェクトを一覧表示するクエリを作成しましょう。

SELECT '従業員' ASタイプ、名前、都市、国FROM従業員UNION SELECT 'プロジェクト'、名前、都市、国FROMプロジェクト

出力:

タイプ 名前
従業員エマベルリンドイツ
従業員ラフルムンバイインド
従業員Aayraニューヨーク使用法
従業員ジョンロンドン英国
従業員デレクニューヨーク使用法
事業プロジェクト1ベルリンドイツ
事業プロジェクト2ムンバイインド
事業プロジェクト3デリーインド
事業プロジェクト4ムンバイインド
事業プロジェクト5ベルリンドイツ

WHERE句のあるUNION

EmployeesテーブルとProjectsテーブルの両方から、個別のインドの都市とその郵便番号を取得するクエリを記述します。

SELECT City、PostalCode、Country FROM Employees WHERE Country = 'India' UNION SELECT City、PostalCode、Country FROM Projects WHERE Country = 'India' ORDER BY City

出力:

郵便番号
デリー110006インド
ムンバイ400015インド

UNION ALL withWHERE句

重複する値が許可されているEmployeesテーブルとProjectsテーブルの両方からインドの都市とその郵便番号を取得するクエリを記述します

SELECT City、PostalCode、Country FROM Employees WHERE Country = 'India' UNION ALL SELECT City、PostalCode、Country FROM Projects WHERE Country = 'India' ORDER BY City

出力:

郵便番号
デリー110006インド
ムンバイ400015インド
ムンバイ400015インド
ムンバイ400015インド

この記事を進めて、JOINSでUNIONおよびUNIONALL句を使用する方法を理解しましょう。SQLのJOINSは これらは、それらのテーブル間の関連する列に基づいて、2つ以上のテーブルの行を結合するために使用されます。

UNION with JOINS

SQL UNION演算子は、 2つの異なるテーブルからデータを取得します。例として、次のテーブルをEmployeesテーブルと一緒に検討します。

ProjectDetailsテーブル

PID 営業日 EmpID CostforProject
十一12420000
2216335000
3330160000
4425345000
5521150,000
SELECT EmpID、Name、CostforProject FROM Employees LEFT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION SELECT EmpID、Name、CostforProject FROM Employees RIGHT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID

出力:

EmpID 名前 CostforProject
1エマ60000
1エマ50,000
2ラフルヌル
3Aayra35000
3Aayra45000
4ジョン20000
5デレクヌル

UNION ALL with JOINS

重複する値が許可されているEmployeesテーブルとProjectDetailsテーブルからEmpID、Name、CostforProjectを取得するクエリを記述します。

SELECT EmpID、Name、CostforProject FROM Employees LEFT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION ALL SELECT EmpID、Name、CostforProject FROM Employees RIGHT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID

出力:

EmpID 名前 CostforProject
1エマ60000
1エマ50,000
2ラフルヌル
3Aayra35000
3Aayra45000
4ジョン20000
5デレクヌル
4ジョン20000
3Aayra35000
1エマ60000
3Aayra35000
1エマ50,000

これで、SQLUNIONに関するこの記事は終わりです。 SQLUNIONに関するこの記事を楽しんでいただけたでしょうか。 UNIONコマンドとUNIONALLコマンドを使用してクエリを作成するさまざまな方法を見てきました。 あなたがについてもっと知りたいなら MySQL このオープンソースのリレーショナルデータベースを理解してから、 インストラクター主導のライブトレーニングと実際のプロジェクト経験が付属しています。このトレーニングは、MySQLを深く理解し、主題をマスターするのに役立ちます。

質問がありますか? 「SQLUNION」のコメント欄にその旨を記載していただければ、折り返しご連絡いたします。