MySQL の UNION 関数を使用して複数のクエリ結果を結合する方法

WBOY
リリース: 2023-07-25 10:01:48
オリジナル
2387 人が閲覧しました

MySQL の UNION 関数を使用して複数のクエリ結果をマージする方法

MySQL は、データ クエリと操作のための豊富な機能と構文を提供する、一般的に使用されるリレーショナル データベース管理システムです。その中でも、UNION 関数は複数のクエリ結果を結合するためによく使用される方法であり、データ セットを効果的に結合および統合できます。この記事では、MySQL の UNION 関数を使用してこの関数を実装する方法と、対応するコード例を紹介します。

1. UNION 関数の基本的な使い方と構文

UNION は、複数のクエリ結果を結合するために使用される関数です。基本的な構文は次のとおりです。

SELECT column1, column2, ... FROM table1
UNION
SELECT column1, column2, ... FROM table2
...
ログイン後にコピー

ここで、

  • column1、column2、... は、選択する列の名前です。
  • table1、table2、... はクエリ対象のテーブルの名前です。

UNION 関数では、マージされたクエリ結果が同じ数の列と同様のデータ型を持つ必要があることに注意してください。

2. UNION 関数を使用して複数のクエリ結果を結合する

次は簡単な例です。 table1 と table2 という 2 つのテーブルがあるとします。

-- 创建表table1
CREATE TABLE table1 (
  id INT PRIMARY KEY,
  name VARCHAR(50)
);

-- 创建表table2
CREATE TABLE table2 (
  id INT PRIMARY KEY,
  salary FLOAT
);

-- 向表table1插入数据
INSERT INTO table1 (id, name) VALUES (1, 'John');
INSERT INTO table1 (id, name) VALUES (2, 'Lisa');

-- 向表table2插入数据
INSERT INTO table2 (id, salary) VALUES (1, 5000);
INSERT INTO table2 (id, salary) VALUES (2, 6000);
ログイン後にコピー

次に、これら 2 つのテーブルのクエリ結果をマージする必要があります。これは UNION 関数を使用して実現できます。

SELECT id, name FROM table1
UNION
SELECT id, CAST(salary AS CHAR) AS name FROM table2;
ログイン後にコピー

上記のコードにより、次の結果が得られます:

id  | name
-------------
1   | John
2   | Lisa
1   | 5000
2   | 6000
ログイン後にコピー

3. UNION 関数のその他の使用法

基本的な使用法に加えて、UNION 関数も使用できます。他にも用途があります 使用方法と注意事項

  1. UNION ALL: UNION ALL には UNION と同様の機能がありますが、重複排除操作は実行されません。重複した行を保持する必要がある場合は、UNION ALL を使用できます。
SELECT id, name FROM table1
UNION ALL
SELECT id, CAST(salary AS CHAR) AS name FROM table2;
ログイン後にコピー
  1. ORDER BY 句: UNION 関数の後に ORDER BY 句を追加して、結果を並べ替えることができます。
SELECT id, name FROM table1
UNION
SELECT id, CAST(salary AS CHAR) AS name FROM table2
ORDER BY id;
ログイン後にコピー
  1. 注意事項:
  2. UNION 関数では、マージされたクエリ結果が同じ数の列と同様のデータ型を持つ必要があります。
  3. UNION 関数はデフォルトで重複を削除します。重複行を保持する必要がある場合は、UNION ALL を使用できます。
  4. UNION 関数はクエリ結果を自動的に並べ替えます。並べ替え規則を指定する必要がある場合は、ORDER BY 句を使用できます。

4. 概要

MySQL の UNION 関数は、複数のクエリ結果をマージするのに便利な方法です。 UNION 機能により、データセットを柔軟に統合およびマージできます。この記事では、UNION 関数の基本的な使用法と構文を紹介し、対応するコード例を示します。この記事の紹介を通じて、読者がデータのクエリと操作のための UNION 関数の使用にさらに習熟できることを願っています。

以上がMySQL の UNION 関数を使用して複数のクエリ結果を結合する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート