Share via


クエリとビューの比較

クエリとビューには多くの共通点があるため、相違点がわかりにくくなっています。 ここでは、相違点を明確にするため、クエリとビューを簡単に比較します。

ストレージ ビューはデータベース デザインの一部として格納されますが、クエリは格納されません。 データベースのデザイン時にビューを作成しておくと、次のような理由で役に立ちます。

  • データのサブセットは、多くのユーザーの役に立つ場合があります。   各ビューがデータベースに格納されるため、データベース ユーザーが使用できる特定のデータのサブセットがビューによって設定されます。

  • **ビューによりベース テーブルを非表示にできます。   **すべてのユーザーに対して、データの操作にはビューだけを使うように要求し、データベース テーブルへのアクセスを禁止できます。 この方法を使うと、ユーザーやアプリケーション プログラムが、データベースの変更の影響を受けないようにできます。 たとえば、"Current Month Sales" という名前のビューを作成するものとします。各月の初めに、その月に合わせてビューの定義を変更します。 ビューを用意しないと、適切な月から売り上げの行を選択するクエリをユーザーが毎月書き直すことになります。

結果の更新 結果セットの更新に対する制限は、ビューとクエリで異なります。 詳細については、「結果更新の規則」を参照してください。

結果の並べ替え (Microsoft SQL Server のみ) クエリの結果は自由に並べ替えることができますが、ビュー結果の並べ替えは、ビューに TOP 句が含まれている場合にだけできます。 TOP 句の詳細については、SQL Server のマニュアルを参照してください。 並べ替えの詳細については、「クエリ結果の並べ替えおよびグループ化」を参照してください。

クエリ プランの生成 クエリ プランは、データベース サーバーが結果セットをより迅速に作成できるようにする内部処理です。 ビューの場合、データベース サーバーは、ビューが保存されるとすぐにクエリ プランを作成できます。 一方、クエリの場合、クエリが実際に実行されるまで、つまりユーザーが結果セットを明示的に要求するまで、データベース サーバーはクエリ プランを作成できません。

パラメーター化 クエリにはパラメーターを作成できますが、ビューには作成できません。 パラメーター化されたクエリの詳細については、「パラメーターを使用したクエリの作成」を参照してください。

参照

その他の技術情報

クエリおよびビューのデザイン