更新可能なビューを作成するSQL文はどれか。ここで、SQL文中に現れる基底表は全て更新可能とする。
更新可能ビューは単一表の選択と射影に限られる
選択肢
- アCREATE VIEW 高額商品(商品番号, 商品名, 商品単価) AS SELECT 商品番号, 商品名, 商品単価 FROM 商品 WHERE 商品単価>1000
- イCREATE VIEW 受注商品(商品番号) AS SELECT DISTINCT 商品番号 FROM 受注
- ウCREATE VIEW 商品受注(商品番号, 受注数量) AS SELECT 商品番号, SUM(受注数量) FROM 受注 GROUP BY 商品番号
- エCREATE VIEW 商品平均受注数量(平均受注数量) AS SELECT AVG(受注数量) FROM 受注
正解と解説
正解:ア CREATE VIEW 高額商品(商品番号, 商品名, 商品単価) AS SELECT 商品番号, 商品名, 商品単価 FROM 商品 WHERE 商品単価>1000
ビューが更新可能であるためには、ビューの各行が基底表の1行に一意に対応し、更新内容を基底表へ一意に反映できる必要がある。単一の表からWHERE句で行を絞り、列をそのまま射影しただけのビューはこの条件を満たすので更新可能である。DISTINCT、GROUP BY、集約関数を含むビューは元の行との対応が失われるため更新できない。
選択肢ごとの解説
- ア正しい。単一表からの選択と射影だけなので基底表の行と一対一に対応する。
- イDISTINCTで重複を除くと元の行との対応がつかず更新できない。
- ウGROUP BYと集約関数を含むため、行が集約されて更新できない。
- エ集約関数だけのビューは1行に集約されており更新できない。
同じ分野の他の問題
- 関係データベースのビューに関する記述のうち、適切なものはどれか。2025年度 秋期 午前 問28
- “部門別売上”表から、部門コードごと、期ごとの売上を得るSQL文はどれか。2021年度 秋期 午前 問29
- "東京在庫"表と"大阪在庫"表に対して、SQL文を実行して得られる結果はどれか。ここで、実線の下線は主キーを表す。 〔S…2020年度 10月試験 午前 問29
- 表に対するSQLのGRANT文の説明として、適切なものはどれか。2020年度 10月試験 午前 問26
- 図のような関係データベースの“注文”表と“注文明細”表がある。“注文”表の行を削除すると、対応する“注文明細”表の行が、…2019年度 秋期 午前 問27
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。