導入 作業プロセス中に、遅いクエリが調整されることがあります。 MySQL SQL ステートメントのチューニングについては、MySQL 自体がクエリ分析と実行プランのための強力な explain キーワードを提供します。この記事は主にMySQL実行プランIDが空であること(UNIONキーワード)に関する関連内容を紹介し、皆さんの参考と勉強のために共有します。詳しい紹介を見てみましょう。 UNION 演算子は、2 つ以上の SELECT ステートメントの結果セットを結合するために使用されます。たとえば、2 つのテーブルがあるとします。テーブル 1 には、会社の男性従業員の年齢、名前、役職などのデータが記録されています。表 2 には、名前、自宅住所、携帯電話番号などのフィールドを含む、会社内の女性従業員のデータが記録されています。今回は、特定の条件に基づいて 2 つのテーブル内の名前のコレクションをクエリします。 UNION キーワードが使用されます。 UNION は複数のフィールドをクエリできますが、SELECT ステートメントには同じ数の列が必要です。列も同様のデータ型である必要があります。また、各 SELECT ステートメント内の列の順序は同じである必要があります。 文法 table_name1 から column_name を選択 連合 table_name2 から column_name を選択する UNION 演算子は結果セットの重複を排除します。重複値が許容される場合は、UNION ALL を使用できます。重複排除機能以外に、両者の間に違いはありません。 例 ここでの例では、導入に基づいて 2 つのテーブルを作成し、対応する操作を実行します。 まず、user1 と user2 の 2 つのテーブルを作成します。テーブル作成ステートメントは次のとおりです。 -- テーブルステートメントの作成 CREATE TABLE user1 ( id INT、 年齢 INT、 名前 VARCHAR (5)、 位置 VARCHAR (8) ); テーブルuser2を作成します( id INT、 名前 VARCHAR(5)、 住所 VARCHAR(50)、 電話番号 VARCHAR(20) ) 次に、対応するデータを挿入します。SQL は次のようになります。 -- データ挿入ステートメント INSERT INTO user1 価値観 ( 1、 20, 「張三」 「テクニカルディレクター」 ); ユーザー1に挿入 価値観 ( 2、 20, 「李斯」、 「プロダクトマネージャー」 ); ユーザー1に挿入 価値観 ( 3、 20, 「王武」、 「オペレーションディレクター」 ); ユーザー1に挿入 価値観 ( 4、 20, 「趙劉」、 「物流マネージャー」 ) ユーザー2に挿入 ( id、 名前、 住所、 電話番号 ) 価値観 ( 1、 「真真」、 '北京'、 '155332211' ); ユーザー2に挿入( id、 名前、 住所、 電話番号 ) 価値観 ( 2、 「リアンリアン」 '上海'、 '155332211' ); ユーザー2に挿入( id、 名前、 住所、 電話番号 ) 価値観 ( 3、 「愛してる」、 「深セン」、 '155332211' ); 最後にUNION文を実行してクエリを実行します。 -- UNION ステートメント SELECT NAME FROM user1 連合 ユーザー2から名前を選択 コードを実行すると、結果は次のようになります。 ここでの結果セットの列名は、UNION ステートメントの最初の SELECT ステートメントの列名です (user1 は NAME、user2 は name)。 説明時にidはnullです UNION 実行プランを実行すると、結果セットをマージする最後の操作の実行 ID が null になります。また、最初の実行の select_type は単純なクエリ、2 番目以降のクエリは UNION、最後のマージの select_type は UNION RESULT です。 実行プランのコードは次のとおりです。 EXPLAIN SELECT NAME FROM user1 連合 ユーザー2から名前を選択 結果は次のとおりです。 要約する 上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。 以下もご興味があるかもしれません:
|
<<: JS でシングルトン モードを実装するための 6 つのソリューションの概要
>>: Nginx でアクセス頻度、ダウンロード速度、同時接続数を制限する方法
1. Python 3をダウンロードする https://www.python.org/ftp/py...
序文Vue で要素を初回取得できない問題の解決方法は、ポップアップ ウィンドウで要素を取得するために...
具体的な方法は以下の通りです。 CSSコードコードをコピーコードは次のとおりです。 .wap_bot...
nginx ログは filebeat によって収集され、logstash に渡され、logstash...
<canvas> 要素は、クライアント側のベクター グラフィックス用に設計されています。...
MySQL x64 はインストーラーを提供していません、インストーラーを提供していません、インストー...
1. コマンドの紹介read コマンドは、シェルの組み込みコマンドで、標準入力または -u オプショ...
目次序文グローバルパラメータの永続性最後に要約する参考資料:序文2018 年に MySQL 8.0....
この記事では、Linux yumを使用してmysql5.6をインストールする簡単な手順を参考までに紹...
目次1. MySQL の時刻型2. タイムゾーンを確認する3. 不正な時間値4. 厳密モード5. 事...
純粋な CSS3 で実装された美しい入力ボックス アニメーション スタイル ライブラリを共有します ...
VMwareでcentos8サービスをインストールしてコピーすると、次の問題が発生します。 コピー前...
目次序文1. Tomcat クラスローダー構造図: 2. Tomcat のクラスロードプロセスの説明...
テーブル user があり、フィールドは id、nick_name、password、email、p...
必要なファイルをインストールする Yum インストール openssl-* -yデータベースインデッ...