IPA過去問ドリル

令和5年度 秋期 応用情報技術者試験 午前 問28

テクノロジ/データベース

更新可能なビューを作成する SQL 文はどれか。ここで,SQL 文中に現れる基底表は全て更新可能とする。

出典:令和5年度 秋期 応用情報技術者試験 午前 問28

正解:ア

解説

ビューを通して基底表を更新するには,ビューの各行が基底表の行と1対1に対応している必要があります。DISTINCT,集約関数(SUM,AVG など),GROUP BY などを含むビューは行の対応が失われるため更新できません。アは WHERE で行を絞り込んだだけの単純なビューなので更新可能です。

選択肢ごとの解説

  • 正しい。列の選択と WHERE による行の絞り込みだけのビューは,基底表の行と1対1に対応するため更新可能です。
  • 誤り。DISTINCT で重複を除いたビューは,1行が基底表の複数行に対応し得るため更新できません。
  • 誤り。GROUP BY と SUM による集約結果のビューは基底表の行と対応しないため更新できません。
  • 誤り。AVG による集約結果のビューも同様に更新できません。
応用情報技術者の過去問を演習モードで解く