データベーススペシャリスト試験の勉強法|過去問・SQL・記述答案の復習手順
DB試験の勉強は、まず過去問を解き、解けなかった理由に合わせて知識を補う進め方を軸にします。参考書を最初から読み切ることを出発条件にする必要はありません。解答番号を覚えるだけでは、業務ルールから関係スキーマを作る問題や、根拠を短く書く問題に対応しにくいため、SQLの結果と答案の理由まで確かめることが大切です。
2026年度の構成と、旧午後問題の使い方
2026年度からDB試験はCBT方式で実施されます。科目A-1・A-2と科目B-1・B-2に分かれ、DBの科目Bはいずれも記述式です。科目B-2を論述式と混同しないようにしてください。実施年度名と暦年の試験日は一致しない場合があるため、予約期間・受験日・免除条件はIPAの最新案内で確認します。
科目 | 形式・問題数 | 時間 |
|---|---|---|
A-1 | 多肢選択式・30問 | 50分 |
A-2 | 多肢選択式・25問 | 40分 |
B-1 | 記述式・3問から2問を選択 | 90分 |
B-2 | 記述式・2問から1問を選択 | 120分 |
旧午前Ⅰ・午前Ⅱ、午後Ⅰ・午後Ⅱの過去問は、知識確認や長文読解の教材として使えます。問題番号とテーマの対応を固定して覚えず、その年度の問題文と設問を見て選択します。2027年度以降の制度は検討・公表状況を確認し、2026年度の構成が永続する前提で計画しないようにします。
最初に1回分を解き、弱点を分ける
最初の科目A演習では正答率だけでなく、正答したが理由を説明できない問題にも印を付けます。科目Bは時間を気にしすぎず、1問の答案を最後まで作ります。未記入の設問をそのまま解答例で埋めず、自分がどこで止まったかを記録します。
止まった理由 | 次に行う復習 |
|---|---|
用語・仕組みを知らない | 該当する解説を読み、小さな例で説明する |
業務条件を読み落とした | 根拠の段落に戻り、モデルや条件式へ対応付ける |
SQLの結果を誤った | NULL・重複・0件のある小表で実行する |
理解しているが書けない | 対象・理由・操作を残して答案を書き直す |
時間が不足した | 設問選択、読解、答案作成の所要時間を分けて測る |
必要な勉強時間を一律に決めるより、この診断で復習量を決めます。SQL経験があっても正規化の定義や記述が弱いことはあり、実務経験の長さだけで省略する分野を決めないようにします。
1問の復習を、解答例の確認で終わらせない
①答案を作る、②公式解答例と採点講評を確認する、③根拠となる業務条件を挙げる、④自分の誤りを修正する、⑤日を置いて解き直す、の順で進めます。公式ページに訂正が掲載されることがあるため、入手済みのPDFだけでなく最新の掲載内容も確認します。
採点講評は、読み落としや誤解の傾向を知るために使います。非公開の採点基準を推測して「この用語がなければ必ず0点」と決めつけず、設問が要求する内容と解答条件を満たしているかを点検します。類似の表現で書いた場合も、意味が同じか、必要な条件が抜けていないかを確かめます。
ER図と正規化は、文章から制約を導く
多重度は両方向について最小数と最大数を別々に判定します。「1件の注文明細は必ず1商品を参照する」と「商品はまだ一度も注文されていなくても登録できる」は両立します。この場合、明細から商品は1、商品から明細は0以上です。
正規化では、まず業務ルールから関数従属を列挙し、候補キーを求めます。主キーだけを見て第2正規形を判定せず、すべての候補キーと非キー属性を確認します。分解後に自然結合で元の情報が戻るか、制約を各表だけで検査できるかも別々に点検します。
SQLは、少量のデータで実行する
手で追える数行の表を作り、結合、集約、副問合せ、分析関数を実行します。正常な値だけでなく、未注文顧客、NULLを持つゲスト注文、同点の順位、期間の境界を入れると、暗記では気付けなかった条件を確認できます。SQLの論理的な意味と実行計画は区別し、書き方を変えれば必ず高速になるとは考えません。
記述答案と時間配分を練習する
記述は、先に必要な事実を列挙し、その後で字数に合わせます。「何を」「どの条件で」「どうする」「なぜ」のうち、設問が求める部分を残します。字数合わせのために「同一トランザクション」「空席の場合だけ」などの重要な条件を削らないようにします。
基礎を補ったらB-1は90分で2問、B-2は120分で1問を解く演習を行います。得意分野だけで選ばず、本文と設問の量、SQLや図の見通し、答えられる小問を確認します。見直しの時間を確保し、選択指定、主キー・外部キーの表記、期間の上限、字数を点検します。
毎週の計画は「何時間読んだか」より「解き直せた問題」「説明できるようになった誤り」で確認します。新しい問題だけを増やすより、理由を説明できない問題を再演習し、同じ誤りが減ったことを確かめて学習範囲を広げます。
演習1:多重度の読み取り
条件:商品は注文前に登録できる。各注文明細には必ず1商品が指定される。
問い:商品1件に対応する明細の最小数は何件か。
解答例:0件。
根拠:商品登録に注文の存在は必要ない。明細側の必須参照を商品側の必須参加と取り違えない。
演習2:SQLの復習データ
条件:未注文会員をNOT INで抽出したら0件になった。注文の会員IDにはNULLがある。
問い:最初に確かめる条件を短く書こう。(35字以内)
解答例:副問合せのNULLと比較結果を確認する。(20字)
根拠:NULLとの比較は不定になる。実行して結果を確かめてから、相関NOT EXISTSなどへ修正する。
復習で確かめること
例の数値や業務条件を変えて同じ結論になるか確認してください。用語の定義だけでなく、問題文のどの条件から、どの制約・SQL・対策を選んだのかを自分の言葉で説明できれば、次の過去問に進みます。
出典と仕様を確認する
関連するテーマ
概念データモデリングとER図記法・多重度(カーディナリティ)設計
関係モデルと正規化理論(第1〜第3正規形・BCNFと関数従属の導出)
次におすすめの学習
編集・検証について
編集・検証:IT資格ラボ編集部
IPAが公開する試験要綱・シラバス・過去問題と、各技術の公式資料を優先して内容を確認しています。制度変更や誤りを確認した場合は、記事を見直して更新します。
編集方針・情報源・訂正方針を見る