令和5年度秋期 応用情報技術者試験 午前 問28
更新可能なビューを作成する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 受注
解答・解説を見る
正解:ア
AI解説
更新可能なビューとは、ビューに対するINSERT・UPDATE・DELETEが基底表に一意に反映できるビューのことであり、単一の基底表からの単純なSELECT(集約関数・GROUP BY・DISTINCTなどを含まない)で定義されたビューが該当する。 ア: 商品番号・商品名・商品単価をWHERE句で単純に絞り込むだけのSELECTで定義されたビューであり、集約や重複排除を含まないため更新可能であり、正解である。 イ: DISTINCTを使って重複行を排除するビューは、更新結果を基底表の特定の行に一意に対応させることができないため、更新可能なビューにはならない。 ウ: SUMなどの集約関数とGROUP BY句を用いたビューは、個々の基底表の行と対応が取れないため、更新可能なビューにはならない。 エ: AVGなどの集約関数のみで構成されたビューも同様に基底表の行と一意に対応しないため、更新可能なビューにはならない。 💡 更新可能ビューの判定は「集約関数・GROUP BY・DISTINCT・複数表の結合などがなく、基底表の行と1対1に対応するSELECTかどうか」を確認するのが基本である。
出典:令和5年度 秋期 応用情報技術者試験 午前 問28 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。