データベースでは、UNION キーワードと UNION ALL キーワードの両方が 2 つの結果セットを 1 つにマージしますが、使用方法と効率の点で 2 つは異なります。 MySQL の UNION UNION はテーブルをリンクした後に重複レコードを除外します。そのため、テーブルがリンクされた後、結果セットがソートされ、重複レコードが削除されてから結果が返されます。実際には、ほとんどのアプリケーションでは重複レコードは生成されません。最も一般的なのは、プロセス テーブルと履歴テーブルの UNION です。のように: gc_dfys から * を選択 ls_jg_dfys から * を選択 この SQL を実行すると、まず 2 つのテーブルの結果が取得され、次にソート スペースを使用して重複レコードがソートおよび削除され、最後に結果セットが返されます。テーブル内のデータ量が多い場合は、ディスク ソートが行われる場合があります。 MySQL の UNION ALL UNION ALL は、2 つの結果を単純に結合して返します。この方法では、返された 2 つの結果セットに重複データがある場合、返された結果セットには重複データが含まれます。 効率の面では、UNION ALL は UNION よりもはるかに高速なので、2 つのマージされた結果セットに重複データが含まれていないことを確認できる場合は、次のように UNION ALL を使用します。 gc_dfys から * を選択 すべて ls_jg_dfys から * を選択 UNION を使用すると、結果セット全体に DISTINCT を使用した場合と同様に、返されるすべての行が一意になります。 Union all を使用すると、重複を削除せずにすべての行が返されます。 ORDER BY 句または LIMIT 句を使用して UNION 結果全体を並べ替えたり制限したりする場合は、個々の SELECT ステートメントを括弧で囲み、最後のステートメントの後に ORDER BY 句または LIMIT 句を配置する必要があります。 (a=10 かつ B=1 の場合、tbl_name から a を選択) 連合 (a=11 かつ B=2 の場合、tbl_name から a を選択) 制限10で注文します。 これを行うのは少し面倒です: (からユーザーIDを選択 testa からユーザー ID を選択 union all testb からユーザー ID を選択 t ユーザーID制限0,1で並べ替え。 それでもグループ化して条件を設定する場合は、次のようにします。 select userid from (select userid from testa union all select userid from testb) t group by userid having count(userid) = 2; 注意: ユニオン括弧の後にエイリアスが必要です。そうでない場合はエラーが報告されます。 もちろん、複数の結合テーブルのデータ量が大きい場合は、まずテキストをエクスポートしてからスクリプトで実行することをお勧めします。 純粋な SQL が使用されるため、効率は比較的低く、一時ファイルが書き込まれます。ディスク容量が十分でない場合は、エラーが発生する可能性があります。 ファイル '/tmp/MYLsivgK' の書き込みエラー (エラーコード: 28) 要約する 以上が MySQL の union と union のすべてについての紹介です。お役に立てれば幸いです。ご質問があれば、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
<<: CocosCreator で物理エンジン ジョイントを使用する方法
>>: Centos7.4 環境に lamp-php7.0 をインストールするチュートリアル
1. はじめに会社のプロジェクトを引き継いで2年になります。今では毎回プロジェクトを起動するのに1分...
目次(1)はじめに: (2)クリップボードの内容をコピーする方法は次のとおりです。 (3)関数演算に...
企業が Docker 自動デプロイメントを構築する場合、Docker の実行時にコンテナ内の設定ファ...
序文こういう特殊効果ってよく見かけますよね。すごくかっこいいですよね。 これは、Google Mat...
この記事では主にDockerを使ってElasticSearch:バージョン6.8.4をデプロイする方...
目次概要コンソールログコンソール.infoコンソール.警告コンソールエラーコンソールテーブルコンソー...
この記事では、参考までにMySQL 8.0に接続できないJavaの問題をまとめて紹介します。具体的な...
docker を使用すると、ファイルをマウントできない場合があります。これは、仮想マシンの共有フォル...
比較的シンプルな業務のプロジェクトもありますが、フロントエンドのページングを多用します。プラグインの...
日常業務でファイルをダウンロードする一般的な方法は 2 つあります。 1 つ目は、サーバーのファイル...
レプリケーションとは、マスター データベースの DDL および DML 操作をバイナリ ログを介して...
この記事では、例を使用して、MySQL 外部キーの基本的な機能と使用方法を説明します。ご参考までに、...
この記事では、JavaScriptで簡単なGobangゲームを実装するための具体的なコードを参考まで...
この記事の例では、ドロップダウンリストを実装するためのJavaScriptの具体的なコードを参考まで...
例: mysqldump –all-databases を使用すると、すべてのライブラリがエクスポー...