“社員取得資格”表に対し、SQL文を実行して結果を得た。SQL文のaに入れる字句はどれか。 〔社員取得資格〕 社員コード, 資格 S001, FE S001, AP S001, DB S002, FE S002, SM S003, FE S004, AP S005, NULL 〔結果〕 社員コード, 資格1, 資格2 S001, FE, AP S002, FE, NULL S003, FE, NULL 〔SQL文〕 SELECT C1.社員コード, C1.資格 AS 資格1, C2.資格 AS 資格2 FROM 社員取得資格 C1 LEFT OUTER JOIN 社員取得資格 C2 [ a ]

外部結合の右側条件はON句、左側の絞り込みはWHERE句に置く

頻出データベーススペシャリスト試験2019年度 春期 午前II11/SQL / 問合せ

社員取得資格:
社員コード資格
S001FE
S001AP
S001DB
S002FE
S002SM
S003FE
S004AP
S005NULL
結果:
社員コード資格1資格2
S001FEAP
S002FENULL
S003FENULL

選択肢

正解と解説

正解: ON C1.社員コード = C2.社員コード AND C1.資格 = 'FE' AND C2.資格 = 'AP' WHERE C1.資格 = 'FE'

結果には基本情報の資格を持つ社員だけが並び、応用情報を持たない社員は資格2がNULLになっている。左外部結合で残す側の絞り込み(基本情報を持つ行)はWHERE句で行い、応用情報の有無による突合せはON句に置くことで、対応が無い場合もNULLで残せる。

選択肢ごとの解説

出典:平成31年度 春期 データベーススペシャリスト試験 午前II 問11(IPA)

同じ分野の他の問題

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