ビューとは?ビュー
ビューとは、問合せの定義に名前を付けた仮想の表。データの実体は持たず、参照されるたびに定義された問合せが評価される。表の構造を変えずに、利用者ごとに見せる列や行を絞ったり、複雑な結合をひとつの名前に畳んだりできる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
三層スキーマでいう外部スキーマを、関係データベースの上で実現する仕組みである。表定義を直すたびに全アプリケーションが壊れる状態を避けたい(論理データ独立性)という要求と、列単位・行単位のアクセス制御をGRANTだけでは表現できないという要求の、両方に同時に答えている。設計を任される段階の開発者には「基底表を隠す層をどこに置くか」という判断として現れる。
具体例
会員表から生年月日と電話番号を除いた会員一覧ビューを定義し、コールセンターの担当者にはビューにだけSELECT権限を与える。集計が重い売上サマリなら、Oracle DatabaseやPostgreSQLのマテリアライズドビューで結果を実体化し、夜間に再計算する選択肢もある。
試験での引っ掛け
更新できるのは、ビューの行と基底表の行が1対1に対応する場合だけ。集約関数、GROUP BY、DISTINCT、UNION、複数表の結合を含むビューは一般に更新できない。またマテリアライズドビューは実体を持つので「ビューはデータを持たない」の例外であり、更新の反映時点がずれる点も含めて問われる。
関連用語
出た過去問
問題文で直接問われたものと、解説の中で触れられたものが含まれます。
出典:平成28年度 春期 データベーススペシャリスト試験 午前Ⅱ 問10(IPA)
更新可能なビューの定義はどれか。ここで、ビュー定義の中で参照する基底表は全て更新可能とする。
正解:CREATE VIEW ビュー3(取引先番号, ランク, 住所) AS SELECT 取引先.取引先番号, 取引先.ランク, 取引先.住所 FROM 取引先 WHERE 取引先.ランク > 15
要点:更新可能なビューは基底表の行と1対1に対応するもの
更新可能なビューは、元の表の行と1対1に対応付けられ、更新内容を基底表へ一意に反映できるものに限られる。単一の表を対象にWHERE句で行を絞っただけの定義は行の対応関係が保たれるため更新可能である。
出典:平成28年度 春期 データベーススペシャリスト試験 午前Ⅱ 問25(IPA)解説で登場
XP(eXtreme Programming)のプラクティスの一つに取り入れられているものはどれか。
正解:ペアプログラミング
要点:ペアプログラミングはXPの代表的プラクティス
XPのプラクティスには、ペアプログラミング、テスト駆動開発、リファクタリング、継続的インテグレーション、小さなリリースなどがある。ペアプログラミングは2人が1台の端末で役割を交代しながらコードを書き、その場でレビューしながら品質を高める手法である。
出典:平成29年度 春期 データベーススペシャリスト試験 午前Ⅱ 問10(IPA)
ある月の“月末商品在庫”表と“当月商品出荷実績”表を使って、ビュー“商品別出荷実績”を定義した。このビューにSQL文を実行した結果の値はどれか。 月末商品在庫:…
正解:400
要点:外部結合で生じたNULLはWHERE条件では選ばれない
ビューは左外部結合で作られているため、出荷実績のない商品は出荷実績数がNULLになる。WHERE句の条件はNULLに対してunknownとなり行が選ばれないので、対象は出荷実績数150の商品と300の商品の2件だけとなる。それぞれの月末在庫数100と300を合計して400になる。
出典:平成30年度 春期 データベーススペシャリスト試験 午前Ⅱ 問12(IPA)
導出表に関する記述として、適切なものはどれか。
正解:ビューは導出表の一つの形態である。
要点:導出表は問合せ結果として得られる表でビューもその一つ
導出表は、問合せの結果として得られる表であり、実際にデータを保持する実表と対比される概念である。ビューは問合せの定義に名前を付けたもので、参照時に評価されて表を導出するため、導出表の一形態といえる。
出典・参考
高度試験 午前I(高度午前I 相当)のシラバスの3 技術要素 > 3. データ操作 > (2) データベース言語に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。