【びゅー】
ビュー(データベース) とは?
最終更新:
💡 よく使うクエリを「仮想テーブル」として保存する
SELECTの問い合わせに名前を付け、テーブルのように参照できる仕組み。通常のビューは問い合わせの定義を保存し、参照時に元のデータから結果を求める。
📌 このページのポイント
テーブルとどう違うの?
テーブルにはデータが格納されるけれど、通常のビューが保存するのは問い合わせの定義だよ。たとえば CREATE VIEW active_users AS SELECT * FROM users WHERE status = 'active'; と定義すれば、active_usersをSELECTして条件に合う利用者を参照できるんだ。
どんなときに使う?
ビューにすれば速くなる?
通常のビューは結果のキャッシュではないから、作るだけで速くなるわけではないよ。元の問い合わせやインデックスを確認しよう。結果を保存するマテリアライズドビューなら読み取りを速められる場合があるけれど、元データの変更を取り込む更新が必要なんだ。
ビューの更新はできる?
製品とビューの定義によるよ。たとえばPostgreSQLでは、1つのテーブルを参照し、集約・DISTINCT・LIMITなどを含まないといった条件を満たすビューは自動更新できる。更新は元のテーブルへ反映されるんだ。複雑なビューは自動更新できない場合があり、対応するトリガーなどを別途用意する方法もあるよ。
📖 おまけ:英語の意味
「Database View」 = データベースのビュー(視点)
💬 View(見方・視点)。テーブルのデータを特定の視点で見る仕組みだよ