ある月の“月末商品在庫”表と“当月商品出荷実績”表を使って、ビュー“商品別出荷実績”を定義した。このビューにSQL文を実行した結果の値はどれか。 [ビュー“商品別出荷実績”の定義] CREATE VIEW 商品別出荷実績(商品コード, 出荷実績数, 月末在庫数) AS SELECT 月末商品在庫.商品コード, SUM(出荷数), 在庫数 FROM 月末商品在庫 LEFT OUTER JOIN 当月商品出荷実績 ON 月末商品在庫.商品コード = 当月商品出荷実績.商品コード GROUP BY 月末商品在庫.商品コード, 在庫数 [SQL文] SELECT SUM(月末在庫数)AS 出荷商品在庫合計 FROM 商品別出荷実績 WHERE 出荷実績数 <= 300

NULLは比較で真にならず、WHERE句の対象から外れる

システムアーキテクト試験2021年度 春期 午前II24/データベース / SQL

月末商品在庫
商品コード商品名在庫数
S001A100
S002B250
S003C300
S004D450
S005E200
当月商品出荷実績
商品コード商品出荷日出荷数
S0012021-03-0150
S0032021-03-05150
S0012021-03-10100
S0052021-03-15100
S0052021-03-20250
S0032021-03-25150

選択肢

正解と解説

正解: 400

ビューは外部結合と集約により、商品コードごとの出荷数合計と在庫数を返す。出荷実績のないS002とS004は合計がNULLとなり、WHERE句の比較で真とならず除外される。条件を満たすのは合計150のS001(在庫100)と合計300のS003(在庫300)で、在庫数の合計は400となる。

選択肢ごとの解説

出典:令和3年度 春期 システムアーキテクト試験 午前II 問24(IPA)

同じ分野の他の問題

最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。