入れ子になったビューを使用するかどうかについての一般的なベストプラクティスはありますか?ネストされたビューを使用するとパフォーマンスが低下しますか?あなたが4つ以上の層を深く掘り下げるまで、実際にパフォーマンスが低下しないというベストプラクティスはありますか?Sql Server 2008入れ子のビュー
私がこれを求めている理由は、それらを使用するかどうかに苦しんでいるからです。私がその情報へのアクセスを得るための唯一の方法が20以上のテーブルを一緒に参加させることによって報告要求を得るのは珍しいことではありません。フィールドはすべてのテーブルから返されませんが、正しいデータを選択するために必要です。この場合、ビューのネストと他のレポートの下位レベルのビューの再利用が好きです。なぜなら、ロジックへの変更が必要な場合は、ただ1つのビューを更新するだけで、すべてのレポートが更新されるからです。私が扱っているテーブルの多くは、何百万と何百万というレコードを含んでいます。
しかしこれは良い方法ではないかもしれません。あなたはこれについてあなたの考えを共有してもよろしいですか?
ビューは集計を行いますか?同じ基本表をそれ自身に結合していますか?実行計画を見て、最適な計画が得られていないかどうかを確認してください。 –
「ネストされたビュー」の例を教えてください。インライン・ビュー(AKA派生テーブル)、マテリアライズド・ビュー(SQL ServerのAKA索引ビュー)などの用語に慣れています。 –
@OMG - 他のビューを参照する他のビューを参照するビューを意味します。 –