UNIONの使用ほとんどの SQL クエリは、1 つ以上のテーブルからデータを返す単一の SELECT ステートメントで構成されます。 MySQL では、複数のクエリ (複数の SELECT ステートメント) を実行し、結果を単一のクエリ結果セットとして返すこともできます。これらの結合されたクエリは、多くの場合、ユニオンと呼ばれます。 複合クエリが必要となる状況は 2 つあります。
クエリと複数の WHERE 条件の組み合わせ: ほとんどの場合、同じテーブルで 2 つのクエリを組み合わせると、複数の WHERE 句条件を持つ単一のクエリと同じ作業が実行されます。 UNION 演算子を使用して、複数の SQL クエリを組み合わせることができます。必要なのは、各 SELECT ステートメントを指定して、各ステートメントの間にキーワード UNION を入れることだけです。 例えば: 価格が5以下のすべての商品のリストが必要で、サプライヤー1001と1002が製造したすべての商品も含めたいとします。もちろん、WHERE句を使用してこれを実現できますが、ここではUNIONを使用します。
製品からvend_id、prod_id、prod_priceを選択します。ここで、prod_price <= 5です。 SELECT vend_id、prod_id、prod_price FROM products WHERE vend_id IN (1001, 1002);
SELECT vend_id、prod_id、prod_price FROM products WHERE prod_price <= 5 UNION SELECT vend_id、prod_id、prod_price FROM products WHERE vend_id IN (1001, 1002);
製品からvend_id、prod_id、prod_priceを選択します。prod_price <= 5、またはvend_id IN (1001, 1002)です。 UNIONルール
重複行を含めるか除外するかUNION は、クエリ結果セットから重複する行を自動的に削除します。一致するすべての行を返す場合は、UNION ALL を使用します。 SELECT vend_id、prod_id、prod_price FROM products WHERE prod_price <= 5 UNION ALL SELECT vend_id、prod_id、prod_price FROM products WHERE vend_id IN (1001, 1002); 結合されたクエリ結果の並べ替えSELECT ステートメントの出力は、ORDER BY 句を使用してソートされます。UNION を使用してクエリを結合する場合、使用できる ORDER BY 句は 1 つだけです。最後の SELECT ステートメントの後に表示される必要があります。複数の ORDER BY 句は許可されません。 SELECT vend_id、prod_id、prod_price FROM products WHERE prod_price <= 5 UNION SELECT vend_id、prod_id、prod_price FROM products WHERE vend_id IN (1001, 1002) ORDER BY vend_id、prod_price; 上記はMySQL複合クエリの詳細な説明です。MySQL複合クエリの詳細については、123WORDPRESS.COMの他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: TCPパフォーマンスチューニングの実装原理とプロセス分析
>>: マークアップ言語 - テキストの CSS スタイルを指定する
Linux での Tomcat の起動とシャットダウンLinux システムでは、コマンド操作を使用し...
必要最近、Node オンライン サービスを移行する必要があったため、2 つの新しいオンライン サーバ...
結合の種類1. 内部結合: 結合関係を持つ 2 つのテーブル内のフィールドは、結合関係を満たすレコー...
ElementUIページングコンポーネントPagination in Vueの使用は参考になります。...
<br />この世に道はない。より多くの人が歩くようになると、それは道になります。最初は...
NULL が頻繁に使用されるのはなぜですか? (1)Javaのnull Java の NullPoi...
このチュートリアルの動作環境: Windows 7 システム、vue 2.9.6 バージョン、DEL...
昨晩、面接の質問を見ていたら、CSS スタイルの優先順位について特に明確に説明していない人が何人かい...
1. CSS 要素の非表示<br />CSS では、要素を非表示にする (つまり、画面の...
Nginx の紹介Nginx は、高性能な HTTP およびリバース プロキシ サーバーであり、IM...
この記事では、テーブルの作成、フィールドの追加、フィールドの変更、インデックスの追加を行う一般的な ...
みなさんこんにちは。私は梁旭です。ご存知のとおり、Linux ではデバイス ファイルも含めすべてがフ...
目次ポート関連の概念:ポートとサービスの関係1: nmapツールが開いているポートを検出する2: n...
MySQL シーケンス AUTO_INCREMENT の詳細な説明とサンプルコードMySQL シーケ...
Docker を使用して MySQL イメージをプルしようとして 30 分経っても失敗したため、代わ...