ネストループ・ジョインでは、索引駆動または運転を作成する必要がある表を誰かが助けてくれますか?どのテーブルをどのようにしてテーブルを駆動し、どのテーブルを駆動するのかを見つけることができますか?Oracle SQLの駆動テーブルと駆動テーブル
0
A
答えて
0
ネステッド・ループ結合 - 小さなテーブルには、駆動表で、大きなテーブルには、駆動テーブル
「駆動」テーブルは、私たちがFROM参加するテーブルです - 他のテーブルに参加することです。あなたは、クエリを持って言うことができますたとえば、:
select * from emp, dept where emp.deptno = dept.deptno;
この場合、駆動表はDEPTかもしれないが、我々はフルスキャンにDEPTから行をフェッチして、一致EMP内の行を見つけるだろう。 DEPTは運転台です。
多くの要因を使って作られた運転台の選択。たとえば、上記の問合せでDEPT(DEPTNO)に索引があってEMP(DEPTNO)でない場合は、EMPから行をフェッチしてからDEPT(DEPTNO)索引を使用してEMPを駆動表に使用します。 - 一致をDEPTテーブルで見つける。表のサイズ、列の値の基数などは、運転テーブルの選択に影響を与えます(例:HINTS)。
ルールベースオプティマイザを使用する場合は、FROM句にテーブルを配置することが適切です。 from節を右から左に処理します。FROMリストの最後から運転台を選ぶ傾向があります。コストベースオプティマイザには、これも同様に起こることを示すヒントがあります。
CBOを使用している場合、テーブルの順序は関係ありません(ヒントがない限り)。統計とデータ辞書を使用して、どのテーブルが運転テーブルとして使用されるのが最適かを判断します。
はまた
次の2つのテーブルの結合を実行、一つのテーブルには、「駆動表」です。駆動テーブルは、Oracleが最初にジョインで処理するテーブルです。 Oracleは運転テーブル内のレコードを読み取り、他のテーブル内の一致するレコード(結合条件によって決定)を検索しようとします。
関連する問題
- 1. 直接コード化対テーブル駆動型レクサー?
- 2. データ駆動テストとキーワード駆動テストの違い?
- 3. メッセージ駆動型とアプリケーション統合型のイベント駆動型アプローチ
- 4. モデル駆動型とテンプレート2型で駆動するテンプレート
- 5. Javaソケットイベント駆動
- 6. ドメイン駆動のプログラミングとイベント
- 7. Sql DB駆動型Webアプリケーションアーキテクチャの質問
- 8. MySQL駆動の多言語ウェブサイトのテーブルのスキーマ
- 9. クエリ駆動型モデリングとビッグデータ
- 10. ステートパターンとドメイン駆動デザイン
- 11. ドメイン駆動設計とAutomapper
- 12. 駆動テーブルの列値を追加する
- 13. 非再帰的予測テーブル駆動LL(1)ファンクションプログラミングのパーサー
- 14. データ駆動型IoC
- 15. イベント駆動TLSサーバー
- 16. データ駆動型セレンテスト
- 17. データ駆動DUnitテスト
- 18. ドメインイベント駆動型アーキテクチャ
- 19. ステージングイベント駆動アーキテクチャ - Weblogic
- 20. ベストプラクティスLinq駆動プロパティ
- 21. Arduino 3輪駆動
- 22. データ駆動型ステートマシンアプリケーション
- 23. Appleホームキット - サーバ駆動
- 24. LL(1)ANTLRまたはANTLR3を使用するテーブル駆動コンパイラ
- 25. jQuery Mobile - Ajax駆動のナビゲーション
- 26. メッセージ駆動型BeanのLog4j
- 27. テンプレート駆動型のカスタムControlValueAccessor
- 28. ユニットテストのイベント駆動型javascript
- 29. モデル駆動型のアクセスアレイ
- 30. データベース駆動型のiOSアプリ
ルールベースのオプティマイザは、Oracleでは少なくとも15年間は関連していません。 –