1. サブクエリとは何ですか?商品 TNT2 を注文したすべての顧客を一覧表示します。 cust_idを選択 注文から order_num IN (SELECT order_num 注文商品から prod_id = 'TNT2'の場合 ) サブクエリを含む ネストできるサブクエリの数に制限はありませんが、実際の使用では、パフォーマンスの制限により、あまり多くのサブクエリをネストすることはできません。 注記:
サブクエリは cust_name、cust_state、(SELECT COUNT(*) FROM orders WHERE orders.cust_id = customers.cust_id) を orders として選択します。 顧客から cust_name で並べ替え
接続は次のとおりです。 ベンダー名、製品名、製品価格を選択します ベンダー、製品から vendors.vend_id = products.vend_id の場合 ベンダー名、製品名で並べ替え 注記:
where ステートメントを使用して結合する役割は次のとおりです。
注記:
次の SELECT ステートメントは、前の例とまったく同じデータを返します。 ベンダー名、製品名、製品価格を選択します vendors から、 vendors.vend_id の products を INNER JOIN して、 products.vend_id に変換します。 ベンダー名、製品名で並べ替え どの構文を使用すればよいですか? パフォーマンスの考慮事項 たくさん実験してください。ご覧のとおり、通常、特定の SQL 操作を実行する方法は複数あります。物事を行うのに絶対的に正しい方法や間違った方法というものはほとんどありません。パフォーマンスは、操作の種類、テーブル内のデータの量、インデックスやキーの存在、その他の条件によって影響を受ける可能性があります。したがって、さまざまな選択メカニズムを試して、特定の状況に最適なものを見つける必要があります。複数のテーブル結合を使用することもできますが、テーブル名が複数の場所で使用されるためテーブル名が非常に長くなり、テーブル別名を使用する必要があるという問題があります。 のように: 以下にいくつかの特殊な接続を紹介します。 2. 自己結合ある品目 ( この問題を解決する一つの方法は次のとおりです。 次のようにサブクエリを使用できます。 prod_id、prod_name を選択 製品から vend_id = (製品から vend_id を選択、prod_id ='DTNTR' を選択) 自己結合も使用できます。 t1.prod_id、t2.prod_name を選択 製品t1、製品t2から ここで、t1.vend_id = t2.vend_id かつ t1.prod_id='DTNTR' サブクエリの代わりに自己結合を使用する 自己結合は、同じテーブルからデータを取得するときに使用されるサブクエリを置き換える外部ステートメントとしてよく使用されます。最終結果は同じですが、結合はサブクエリよりもはるかに高速に処理できる場合があります。どちらのアプローチが優れているかを判断するには、両方のアプローチを試してみる必要があります。 3. 自然な結合テーブルを結合するときは、複数のテーブルに表示される列 (結合される列) が少なくとも 1 つ必要です。標準結合 (前の章で説明した内部結合) では、同じ列が複数回出現する場合でも、すべてのデータが返されます。自然結合により、複数の出現が排除され、各列が 1 回だけ返されるようになります。 この作業を完了するにはどうすればいいですか?答えは、システムが仕事をするのではなく、あなた自身がそれをやるということです。自然結合は、一意の列のみを選択する結合です。これは通常、テーブルでワイルドカード ( 4. 外部接続多くの結合は、あるテーブルの行を別のテーブルの行に関連付けます。しかし、場合によっては、関連付けられている行がない行を含める必要があります。たとえば、結合を使用して次の操作を実行できます。 たとえば、まだ注文していない顧客も含め、各顧客が注文した注文数をカウントします。 顧客ID、注文番号を選択します 顧客からのLEFT OUTER JOIN orders on customers.cust_id = orders.cust_id この 集計関数を使用した結合の使用: すべての顧客と各顧客の注文数を取得するには: customers.cust_id を選択し、COUNT(order_num) を num として取得します。 顧客からのLEFT OUTER JOIN orders on customers.cust_id = orders.cust_id cust_id によるグループ化
これで、MySQL サブクエリと結合テーブルに関するこの記事は終了です。MySQL サブクエリと結合テーブルに関するより詳しい情報については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: マウスが画像のハイパーリンク上を通過するときに画像のサイズ(幅、高さ)を変更する CSS
操作効果: html <!-- この要素は表示されません。DOM は JavaScript に...
ステップ 1: yum install httpd -y #httpd サービスをインストールします...
<br />ナビゲーションとは、ウェブサイトの上部にあることが多いナビゲーション バーの...
目次基本的な指示1. 現在のマシンのコンテナステータスを確認する2. イメージをダウンロードまたは取...
目次1. Vue スキャフォールディングをインストールする2. プロジェクトを作成する3.1 プロジ...
目次執筆の背景プロジェクトの説明事前準備注記執筆の背景以前のプロジェクトではTencent Maps...
スタイルシートの最も重要な機能の 1 つは、ページ、画面、電子シンセサイザーなどの複数のメディアに適...
1. 要件Vue.js フレームワークを使用してフロントエンド プロジェクトを開発する場合、サーバ...
目次序文1. 概要2. 読み取りと書き込みの分離3. MySQL マスタースレーブレプリケーションの...
目次1. HTTPGET 2. HTTP POSTウェブソケット4. Egretのhttpとwebs...
1. Nginxの同時実行性を最適化する [root@proxy ~]# ab -n 2000 -c...
この記事では、優れた Web ページのカラー マッチングの事例を 20 件集めて紹介します。これらの...
今日は、ローカルの Docker プロジェクト イメージを dockerhub に公開する方法を紹介...
この機能を実装するにあたり、本家ブロガーさんから拝借した方法では色の切り替えが実現できず、長い間考え...
データを挿入するとき、以前オフィス システムに取り組んでいたときにはデータベースのパフォーマンスにつ...