2012-02-16 4 views
1

かなり大きなテーブルで動作する一連のビューを作成しました。テーブルは適切に索引付けされており、パフォーマンスは完全に十分です。ビューの効果的なビューであるDBにビューの追加レイヤーを追加したいと思います。私が知りたいのは、SQL Serverがクエリを構築するときに基になるテーブルのインデックスを使用するのに十分なスマートなのか、何らかの方法でビューの最初の層のインデックスを作成する必要があるかどうかです。ビューとインデックスについて(SQL Server 2008 R2)

+3

これは、実行計画の表示 – SWeko

+1

はいで簡単に確認できます。それは十分にスマートです。 )) – Oybek

+1

実際のデータは、データを物理的に含むテーブルまたはビューから取得されます。したがって、SQLサーバエンジンは、利用可能なすべての速度ブースター、すなわちindecesを使用する以外は何もしません。 – Oybek

答えて

2

はいです。ビュー(永続化されていないビュー)は、DBに格納されているクエリだけです。 table1からselect *というビューがあり、view1から*を選択すると、SQL Serverは自動的にtable1から*を選択して実行プランを作成します。

オブジェクトのチェーンを増やす場合は同じルールが適用されますより多くのビューを追加します。

関連する問題