この記事は「データベーススペシャリスト資格に興味はあるが、どのようなものか?どう学ぶのか?」という方向けに、具体的な内容と私自身の挑戦ログをお伝えする。学び中の方や、これから学ぼうとされる方の参考になれば幸いだ。今回は知識およびSQL(確認ドリル)について書く。(SQLはGoogle Big Queryに準拠)
また、考察においてキャリアコンサルタント資格の挑戦ログについても記述する。
DB学習方針(一部再掲)
対策MUSTのもの
- 午前2対策、TAC講義動画全て視聴⇒完了
- 午前2対策、TACテキストの問題全て完答⇒3ラリー目まで完了(直前見直し要)
- 午前2対策、過去5年分の過去問ベースで完答⇒1ラリー目完了、ほぼ全問正解(直前見直し要)
- 午後対策、TAC講義動画全て視聴⇒完了
- 午後1対策、”物理+SQL”問題につき、解き方を把握しておく⇒現在着手中⇒直前にもう一度解く(無理なら頭の中で解く)は必要。定着のため
- 午後1・午後2対策、論理設計問題につき、時間内に答えを埋める訓練⇒約7つの過去問につき2ラリー目まで完了。1日1回の実技演習として3ラリー目実施中
- 全般対策、TAC実力テストおよび公開模試の提出⇒提出済、返却待ち(模試は返却あり)
- 全般対策、R3を午前・午後通しで解いて最終仕上げ⇒未着手
対策BETTERのもの
- 午前2対策、三好先生の本ベースでも問題を解いておくことで、より幅広く対応⇒未着手
- 午後対策、過去問パターンや業務基本パターン(三好先生テキスト)の記憶⇒未着手
今後の大まかな計画
- 午後1″物理・SQL”を1日1問「解き方把握」する(上記MUST№5)
- 1日1回論理設計実技は続ける(上記MUST№6)
- 残りの時間で、R3(MUST№8)を行う。(返却され次第、TAC実力テストや公開模試振り返り研究。公開模試は動画もあり(MUST№7)
- 夜寝る前などスキマ時間かつスマホ・PC利用できないときは、本ベースの学習(BETTER№1,2)
回答プロセス考察(NEW)
- 共通の回答プロセスとして、「本文・RDBMS仕様・パズル要素」の3点と認識。
- まず「本文」とは、本文中で設問について記載している箇所を探すこと。大抵設問1から順に本文も綺麗に並んでいるので、特定しやすい。
- 次に「RDBMS仕様」とは、設問に関わりのある仕様の記載箇所を探すこと。記載の内容は毎回ほぼ同様で、少しづつ特色があるので、過去問を解きながら慣れるのがベターか。ここの記載はヒントであり制約でもある点に注意。
- 最後に「パズル要素」とは、穴埋めで既に埋まっている箇所もヒントに、残りを推測して埋めていく作業。実はかなりこれで解ける部分も大きい。
- いずれにせよ上記の作業で、答えは一意に特定できるはずなので、それを意識しておくこと。
DB学習ログ
午後1″物理・SQL”
- 今回はR3 問2のSQLの処理時間に関する問題を確認。
- 一度解き方を理解できれば、同じ問題なら解けるだろう。
- ただ、応用力を身に着けるため、「なぜそうなるのか」の理解をあわせて行いたい。
- 今回の大事なポイントは3つ。
- まず、索引はSQLの処理時間を早めるのに有効であること。(ただし、参照を早くするため、更新を犠牲にしている点は注意したい)
- 次に、主索引によるランダムアクセスのSQL処理時間は、テーブルが巨大であるほど長くなりやすく、解決策としてデータバッファを増やしバッファヒット率を高める方法があること。(なお、表探索は前から順に検索するのでこの解決策は意味がない)
- 最後に、区文化という方法があること。これは、いくつかのディスクにデータを分割するもの。当然、そのうち一部しか処理で使わないなら時間の短縮が期待できる。ただし、ログバッファ出力処理はボトルネックになりやすいことに注意。
1日1回論理設計実技
- 今回は、R2 午後2 問2の設問1(マスタ部分)を再度解いた。
- もともとの計画時間内に回答終了。風邪気味で体調が優れなかったものの、ほぼ全て正解。
- ほどよく内容は忘れていたので、プロセスの良い復習になった。
- やはり、「コツでまとめたプロセスのキーワード」「具体的な実務シーン」「スーパタイプやサブタイプなどの基本的な知識」など、必要な知識・スキルまとめてアウトプットで練習できるので、過去問を解くトレーニングは有効と認識。
(1日のうち)残りの時間でやったこと
- 午前2対策は一通り完了したため、テキストを軽く見るにとどまった。
問題127(SQL確認ドリル)
問題文
- salesとcustomersテーブルから、都道府県別の販売個数の合計が小さい順に3つの都道府県を求めてください。
- 結果テーブルは、都道府県(prefecture)とsum_qtyの2カラムとします。
joinおさらい
- salesテーブルは販売個数を管理しているが、顧客情報はuser_idのみである。
- いっぽうcustomersテーブルは主キーにuser_idを持ち、都道府県などの詳細な顧客情報を含む。
- そこで、user_idを結合キーにしてsalesテーブルとcustomersテーブルを結合し、そのうえで都道府県別に束ねて、販売個数(quantity)の合計を求める。
- 具体的には以下のとおり。
考察
- データベーススペシャリスト資格について。午後1(SQLの処理時間、論理設計)実技をふまえ、今後意識すべきことを再整理した。また、SQLの確認ドリル(salesとcustomersテーブルから、販売個数の合計が小さい都道府県を3つ求める)を解いた。
- キャリアコンサルタント資格について、「自己理解の支援」に関する知識の一部を学んだ。より良い人生を構築していくには、決定主体である「私」を良く知ることが大事というのは納得的だ。様々なツールや理論があるので、色々試しながら、相談支援の際はもちろん、私自身も活用していきたいと思う。
考察のシンプル化と英訳(練習中)
- When planning my life, I think it is important to know myself well first.
- (人生設計をするときは、まず自分自身をよく知ることが大切だと思います)
参考資料
- 集中演習 SQL入門/木田和廣/株式会社インプレス
- 2022年度版 ALL IN ONE パーフェクトマスター データベーススペシャリスト/TAC
コメント