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に接続できない問題を解決する

推薦する

Win10 の組み込み Linux システムを使用して Spring Boot プロジェクトを開始する方法

1. Windows10の組み込みLinuxサブシステムをインストールする1.1. Linuxサブシ...

MySQL の異なるテーブル間でフィールドをコピーする

場合によっては、フィールドから別の新しいフィールドにデータの列全体をコピーする必要があります。これは...

シンプルなドラッグ効果を実現するJavaScript

この記事では、ドラッグ効果を実現するためのJavaScriptの具体的なコードを参考までに紹介します...

React構成サブルーティングの実装

1. コンポーネント First.js にはサブコンポーネントがあります。 './Admin...

Winにmysqlをインストールする詳細な手順

この記事では、参考までにWinにmysqlをインストールする詳細な手順を紹介します。具体的な内容は次...

vue3 のコンポーネントの互換性のない変更の詳細な説明

目次機能コンポーネント非同期コンポーネントの書き方とdefineAsyncComponentメソッド...

Nginx サービス クイック スタート チュートリアル

目次1. Nginx の紹介1. Nginx とは何ですか? 2. Nginx を使用する理由3. ...

Xtrabackup を使用して MySQL をバックアップおよび復元する方法

目次1. バックアップ1.1 万全の準備1.2 追加の準備2 バックアップとリカバリ2.1 データの...

Nginx レベルで基本的なユーザー認証を構成する手順を完了します。

序文アプリケーション シナリオ: おそらく、内部 Web サイトは外部ユーザーにアクセス可能である必...

ウェブフロントエンドコードを書く際の考慮事項のまとめ

1. HTMLタグの前に次のような文を追加するのが最適です。 <!DOCTYPE HTML P...

よく使用される Linux コマンドの完全なリスト (推奨コレクション)

目次1. システム情報2. シャットダウン(システムのシャットダウン、再起動、ログアウト) 3. フ...

Vue プラグイン エラー: このページで Vue.js が検出されました。問題は解決しました

Vue プラグインがエラーを報告しました: このページで Vue.js が検出されましたVueプラグ...

CSS ファンタスティックボーダーアニメーション効果の実装

今日、私はブログサイト shoptalkshow を閲覧していて、非常に興味深いこのインターフェース...

CSSで記事の区切り線のスタイルを実装するさまざまな方法のまとめ

この記事では、CSS で記事の区切り線を実装するさまざまな方法をまとめています。区切り線はページを美...

JS クロスドメイン ソリューション React 構成 リバース プロキシ

クロスドメインソリューションjsonp (get をシミュレート) CORS (クロスオリジンリソー...