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. MIME: 多目的インターネットメール拡張インペリアル カレッジ オブ コンピュータ オンラ...
最近、スタック コンテキストについて学習しています。学習の過程で、z-index が 0 の場合と ...
1. 同時実行性同時実行性は OLTP データベースの最も重要な機能ですが、同時実行性にはリソース...
mysqladmin は管理と操作を行う公式の mysql クライアント プログラムです。MySQL...
目次非同期トラバーサル非同期反復可能トラバーサル非同期反復生成非同期メソッドと非同期ジェネレーター非...
1. 目的この記事を通じて、誰もがフロートをクリアする原理と方法を理解し、最終的にこの記事が最良であ...
Web デザインは、個人の好みや Web ページの内容に応じて、デザインのレイアウトが常に変化します...
MySQL(5.6以下)はjsonを解析します #json 解析関数 DELIMITER $$ `j...
<br />では、CSS 構文を巧みに使用してテーブルを美しくする方法を見てみましょう。...
背景:場合によっては、json データをページに直接表示する必要があります (たとえば、インターフェ...
1. Webページを開くと503サービス利用不可が表示されますが、更新すると正常にアクセスできます。...
コードをコピーコードは次のとおりです。高さ:自動 !重要;高さ:550px;最小高さ:550px; ...
崇高なSublime Text はコード エディター (Sublime Text2 は有料ソフトウェ...
MGR (MySQL グループ レプリケーション) は、バージョン 5.7 で追加された新しい機能...
1. ショートカットCtrl + Shift + Pを使用してコンソールを呼び出します 2、「スニペ...