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
目次1.setInterval() 2.タイムアウトを設定する() 1.setInterval()指...
世論調査の理解実際、ポーリングの焦点はループ自体ではなく、実行間の間隔にあります。 Ajax は非同...
Dreamweaver8 を使用して独自の Web サイトを作成する目的は何ですか?インターネットに...
主にインストール後に my.ini ファイルを確認するために、msi 形式でインストールしました。フ...
1. はじめにpt-query-digest は、MySQL のスロー クエリを分析するためのツール...
この記事では、MySQL 8.0.12のインストールチュートリアルを参考までに紹介します。具体的な内...
簡単です。チュートリアルを見てください。ブロガー1. まずdockerを起動するサービスdocker...
目次1. 時計の新しい使い方1.1. ウォッチの使用構文1.2. 複数の属性値を監視する1.3. 参...
この記事では、テキストクロックを実装するためのキャンバスの具体的なコードを例として紹介します。具体的...
目次1. psutilパッケージをインストールする次に、オペレーティングシステム内のすべてのサービス...
目次前面に書かれた序文ChromeプラグインとはChrome プラグイン開発を学ぶことの意義は何です...
1. フレームセット、フレーム、iframeを使用して複数のウィンドウを実現する2. 画像上のマッ...
前回のブログで、Xiao Xiong は関連する要素の操作方法を更新しましたが、同じ要素のグループが...
以下は、私のプロジェクトでこのプロパティを使用する方法の例です。 (1)激しく透明な浮遊コードをコピ...
序文SQL モードは、MySQL がサポートする SQL 構文と、実行されるデータ検証チェックに影響...