基本情報技術者試験 (FE) 科目 A — データベース

SQL 練習問題 14

SQL を読んで実行結果を当てる 4 択問題です。解答すると解説と、 その SQL を実行シミュレーターで開くリンクが出ます。

すべてオリジナル問題です(IPA 公式の過去問は転載していません)。 解答は全問エンジンに実行させて検証しているので、 解説と実際の出力が食い違うことはありません。

基礎(8 問)

レッスンを読めば解けます。

本番相当(6 問)

NULL の扱いや外部結合など、引っかかりやすい点を突いています。

解けなかったら

各問題には関連するレッスンへのリンクが付いています。実行シミュレーターで「一つ進める」を押していくと、どこで行が絞られたのかが目で見えます。

よくある疑問

Q.SQL の問題がまったく解けません。どうすればわかりやすくなりますか?
A.実行結果を暗記で当てにいくのをやめて、評価の順番で追ってください。SQL は書いた順ではなく FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY の順に評価されます。実行シミュレーターで「一つ進める」を押すと各段階の表が出るので、どこで行が減り、どこで列が減ったのかが目で分かります。解けない問題は、この途中の表のどこで自分の予想とずれたかを見るのがいちばん速い直し方です。
Q.何問くらい解けば科目 A の SQL は大丈夫ですか?
A.本番の科目 A でデータベース分野から出るのは 60 問中およそ 4〜6 問で、そのうち SQL を読ませる問題は 1〜3 問です。ここの 14 問は出題パターン(射影と選択・結合・集約・GROUP BY と HAVING・副問合せ・NULL)を一通り網羅してあるので、全問を解説まで理解できていれば十分に届きます。
Q.過去問そのものではないのですか?
A.違います。IPA 公式の過去問は転載していません。過去問に出た構文パターンを踏まえたオリジナル問題で、表と値は作り直しています。そのぶん正解が本当に正しいかが問題になるので、全問を SQL エンジンに実行させて解答キーを検証しています。