ストアドプロシージャ内でテンポラリテーブルを使用する必要がある状況を誰でも説明できますか?ストアドプロシージャ内にテンポラリテーブルが必要な状況
答えて
複雑な結合が実際にオプティマイザをトリップして非常に高価なものにするケースがたくさんあります。オプティマイザをクールダウンする最も簡単な方法は、複雑なクエリを小さな部分に分割することです。 @table変数は常にメモリに格納されているので、#tempテーブルの代わりに@table変数を使用することについて多くの誤解があります。これは神話であり、信じられません。
また、ベーステーブルにない別のインデックスの恩恵を受ける異常値クエリがあり、そのインデックスをベーステーブルに追加することが許可されていない(または有害かもしれません)場合は、これが価値があります(たとえば、代替のクラスタ化インデックスである可能性があります)。これを回避する方法は、データを#tempテーブルに置くことです(ベーステーブルの限定されたサブセットであり、フィルタリングされたインデックスのように動作します)。#tempテーブルに代替インデックスを作成し、結合を実行します#tempテーブルに対してこれは#tempテーブルにフィルタリングされたデータを複数回使用する場合に特に当てはまります。
いくつかのデータに対して多くの更新を行う必要がある場合もありますが、ベーステーブルを複数回更新する必要はありません。 1つのクエリでは実行できないさまざまなデータに対して、複数の処理が必要な場合があります。影響を受けたデータを#tempテーブルに入れ、一連の計算/修正を実行した後、n回ではなく1回ベーステーブルに更新する方が効率的です。ここでベーステーブルに対してトランザクションを使用する場合は、長期間にわたってユーザーからロックすることができます。
もう1つの例は、リンクサーバーを使用していて、サーバー間の結合が非常に高価であることが判明している場合です。代わりに、リモートのデータをまずローカルの#tempテーブルに格納し、ローカルにインデックスを作成し、クエリをローカルで実行することができます。
- 1. Webusercontrolが必要な状況
- 2. ストアドプロシージャ内のテンポラリテーブル
- 3. ストアドプロシージャ内のテンポラリテーブルにプライマリキーを作成する必要がありますか?
- 4. テンポラリテーブルにユニークなインデックス名が必要
- 5. なぜこの状況でcomponentWillReceivePropsが必要なのですか?
- 6. ストアドプロシージャ内でのテンポラリテーブルの作成
- 7. 進捗状況4GL:テンポラリテーブルを使用してXMLをJSONにエクスポート
- 8. SWTウィザードで解凍時に進行状況バーが必要
- 9. 従来のASPストアドプロシージャの戻り状況
- 10. REST APIがHTTPステータスを返す必要がある状況503
- 11. 5つの異なる状況のためにカスタムExcel式が必要です
- 12. 私のアプリケーションコードの進行状況バーのコードが必要
- 13. は私が別の作成者から必要な必要な状況を、持っている
- 14. テンポラリテーブルを削除するストアドプロシージャ
- 15. ストアドプロシージャのMySQLテンポラリテーブルとメモリテーブル
- 16. このような状況でいくつの列が必要ですか?
- 17. Kotlinのコンストラクタパラメータでval/varが必要な状況はありますか?
- 18. MySQLストアドプロシージャのヘルプが必要
- 19. 入力フィールドがフォーム内にある奇怪な状況
- 20. 下記の状況のためにオフィス2007マクロが必要ですか?
- 21. SQLストアドプロシージャの実行状況を確認するには?
- 22. エリクサーで投げ捨てる必要のある状況は?
- 23. 進行状況ダイアログがフラグメント内で破棄されない
- 24. 1つの列に重複がない状況でテーブルから選択する必要があります
- 25. 非常にトリッキーなADO.Netの状況は、エラーをスローしませんが、する必要があります
- 26. Amazon RDS:ER_RECORD_FILE_FULL:ストアドプロシージャ内にテンポラリテーブルを作成中にテーブルがいっぱいになりました
- 27. SQLストアドプロシージャ - 複数のユーザーが同時にテンポラリテーブルを作成する
- 28. 状況
- 29. このような状況では、どのクラス名をジェネリックに挿入する必要がありますか?
- 30. CDNの空き状況がない
場合によっては、複雑なクエリを小さな部分に分解するためにパフォーマンスが良いことがあります。それがこの問題の解決策でした。 http://stackoverflow.com/questions/5581965/sql-server-view-with-a-select-where-x-is-not-null-takes-ages-to-complete/5582058#5582058 –
説明してください私は例を挙げている。 – Shine
リンク先の質問に例があります。 –