MySQL UNION演算子の基本知識ポイント

MySQL UNION演算子の基本知識ポイント

MySQL UNION 演算子

このチュートリアルでは、MySQL UNION 演算子の構文と例を紹介します。

説明する

MySQL UNION 演算子は、2 つ以上の SELECT ステートメントの結果を 1 つの結果セットに結合するために使用されます。複数の SELECT ステートメントは重複したデータを削除します。

文法

MySQL UNION 演算子の構文形式:

式1、式2、...式nを選択します。
テーブルから
[WHERE条件]
UNION [ALL | DISTINCT]
式1、式2、...式nを選択します。
テーブルから
[WHERE条件];

パラメータ

  • expression1、expression2、...expression_n : 取得する列。

  • tables:取得するデータ テーブル。

  • WHERE 条件:オプションの検索条件。

  • DISTINCT:オプション。結果セット内の重複データを削除します。デフォルトでは、UNION 演算子は重複データを削除するため、DISTINCT 修飾子は結果に影響を与えません。

  • ALL:オプション。重複データを含むすべての結果セットを返します。

デモデータベース

このチュートリアルでは、RUNOOB サンプル データベースを使用します。

「Web サイト」テーブルから選択されたデータは次のとおりです。

mysql> SELECT * FROM Websites;
+----+--------------+----------------------------+--------+---------+
| ID | 名前 | URL | Alexa | 国 |
+----+--------------+----------------------------+--------+---------+
| 1 | Google | https://www.google.cm/ | 1 | 米国 |
| 2 | タオバオ | https://www.taobao.com/ | 13 | CN |
| 3 | 初心者向けチュートリアル | http://www.runoob.com/ | 4689 | CN |
| 4 | 微博 | http://weibo.com/ | 20 | CN |
| 5 | Facebook | https://www.facebook.com/ | 3 | 米国 |
| 7 | スタックオーバーフロー | http://stackoverflow.com/ | 0 | IND |
+----+---------------+----------------------------+--------+---------+

「アプリ」アプリのデータは次のとおりです。

mysql> SELECT * FROM アプリ;
+----+------------+-------------------------+----------+
| ID | アプリ名 | URL | 国 |
+----+------------+-------------------------+----------+
| 1 | QQ アプリ | http://im.qq.com/ | CN |
| 2 | Weiboアプリ | http://weibo.com/ | CN |
| 3 | タオバオアプリ | https://www.taobao.com/ | CN |
+----+------------+-------------------------+----------+
セット内の 3 行 (0.00 秒)

SQL UNION の例

次の SQL ステートメントは、「Websites」テーブルと「apps」テーブルからすべての異なる国 (異なる値のみ) を選択します。

ウェブサイトから国を選択
連合
アプリから国を選択
国別に並べ替え;

上記の SQL を実行した場合の出力は次のようになります。

注意: UNION を使用して 2 つのテーブル内のすべての国をリストすることはできません。一部の Web サイトとアプリが同じ国のものである場合、それぞれの国は 1 回だけリストされます。 UNION は重複しない値のみを選択します。重複する値を選択するには、UNION ALL を使用してください。

SQL UNION ALL の例

次の SQL ステートメントは、UNION ALL を使用して、「Websites」テーブルと「apps」テーブルからすべての国 (重複値も含む) を選択します。

ウェブサイトから国を選択
ユニオンオール
アプリから国を選択
国別に並べ替え;

上記の SQL を実行すると、出力は次のようになります。

SQL UNION ALL と WHERE

次の SQL ステートメントは、UNION ALL を使用して、「Websites」および「apps」テーブルから中国 (CN) のすべてのデータ (重複値を含む) を選択します。

ウェブサイトから国と名前を選択
ここで、国は 'CN' です。
ユニオンオール
アプリから国、アプリ名を選択
ここで、国は 'CN' です。
国別に並べ替え;

上記の SQL を実行した場合の出力は次のようになります。

以下もご興味があるかもしれません:
  • MySQL ジョイントクエリ UNION と UNION ALL の使用法の紹介
  • MySQL で union と order by を同時に使用する方法
  • MySQLにおけるUNIONの使い方の詳細な説明
  • MySQL クエリ コマンドで or、in、union all を使用した場合の効率の比較
  • MySQL のジョイント クエリで UNION と Order by を使用する際のエラー問題の解決方法
  • MySQL の union 文と join 文の違いに関するチュートリアル
  • MySQL ユニオン構文コード例の分析
  • MySQL の union と union all の簡単な分析
  • mySQL UNION演算子のデフォルトルールの研究
  • MySQL が UNION を使用して 2 つのクエリを接続できない理由の詳細な説明

<<:  Javascript と Vue を組み合わせて、あらゆる迷路画像の自動パス検索を実現します。

>>:  NavicatがLinuxサーバー上のMySQLに接続できない問題を解決する

推薦する

Vue + 要素を使用して背景データをオプションに動的に表示する

必要:ハードコードされたデータの代わりに、セレクター内のオプション値の動的な表示を実装します。私のロ...

iptables および firewalld ツールを使用して Linux ファイアウォール接続ルールを管理する

ファイアウォールファイアウォールは一連のルールです。パケットが保護されたネットワーク空間に出入りする...

Linux システムでのユーザー管理の概要

目次1. ユーザーとユーザーグループの重要性1) ユーザーの存在意義2) ユーザーグループの重要性2...

ウェブページを作成するために最もよく使用されるHTMLタグ

1. よく使われるHTMLタグの最適化HTML は Web 編集者にとって基本的なスキルであるべきで...

CentOS での Django プロジェクトのデプロイに関する詳細なチュートリアル

基本環境パゴダ設置サービスパゴダにインストールされた[Pythonプロジェクトマネージャー]パゴダに...

SQL ROW_NUMBER() および OVER() メソッドのケーススタディ

構文フォーマット: row_number() over(partition by grouping ...

MySQL InnoDBストレージエンジンについて簡単に説明します

序文:ストレージ エンジンはデータベースの中核です。MySQL の場合、ストレージ エンジンはプラグ...

Raspberry PiにDockerをインストールする方法

Raspberry Pi は ARM アーキテクチャをベースとしているため、Docker のインスト...

imgタグ間のスペースの問題の詳細な説明

IMG タグの基本分析 HTML5 では、img タグには 4 つの要素があります。 (1) src...

Vue画像拡大鏡コンポーネントのカプセル化と使用方法の詳細な説明

Vue画像拡大鏡コンポーネントパッケージに基づいて、参考までに具体的な内容は次のとおりです。画像拡大...

MySQL のストアド プロシージャを使用して 100 万件のレコードをすばやく生成する方法

序文テストを行う際、大量のデータによる負荷に耐えるプロジェクトの能力をテストするために、通常はテスト...

Vue Element フロントエンドアプリケーション開発のための従来の JS 処理機能

目次1. 従来のコレクションに対するフィルター、マップ、および削減処理方法2. 再帰処理3. for...

Vue での bimface の使用に関する詳細

目次1. Vue スキャフォールディングをインストールする2. プロジェクトを作成する3.1 プロジ...

jQuery キャンバスは QR コード付きのポスターを生成します

この記事では、jQuery キャンバスを使用して QR コード付きのポスターを生成するための具体的な...

Docker を使用してエンタープライズレベルのカスタムイメージを構築する方法

序文退社前に、ある依頼を受けました。基本イメージ規格の変更により、最新の Docker イメージ規格...