OSS-DB Silver 【合格体験記】

# はじめに
先日、[OSS-DB silver](https://oss-db.jp/outline/silver#about_silver)を受験し、合格しました。本記事では、試験の概要、学習方法などを紹介していきます。

# 試験結果
- スコア：86点（合格ライン： 64 点）
- 結果：合格
![OSS-DB_silver_accuracy.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/729011/336a4971-9657-44b9-3af6-cea4f980618f.png)


# OSS-DB silverとは
詳細は、[公式ページ](https://oss-db.jp/?_ga=2.217497938.592296299.1666569193-827076501.1665129622)に記載されていますが要約すると以下のとおりです。
- **試験で問われる内容**：PostgreSQL, SQLについての知識（一般知識:16%, 運用管理:52%, 開発/SQL:32%）
- **問題数**：50問
- **試験時間**：90分
- **受験料**：16,500円
- **試験日**：任意
- **受験場所**：テストセンターor自宅受験が可能
- **試験方式**：コンピュータベーストテスト（CBT）


※試験時間のうち5分は試験後のアンケートに使用されるため、実質85分
※テストセンターでの受験の場合、その場で合否が分かる

# 受験目的
- PostgreSQLを用いたアプリ開発を行うため
- PostgreSQLを用いた案件に対応し、DB周りの基礎知識を学びたいと思ったため

# 学習に使用した教材
## [参考書（緑本）](https://www.amazon.co.jp/OSS%E6%95%99%E7%A7%91%E6%9B%B8-OSS-DB-Silver-Ver2-0%E5%AF%BE%E5%BF%9C-%E7%A6%8F%E5%B2%A1/dp/4798162558/ref=tmm_pap_swatch_0?_encoding=UTF8&qid=1666573329&sr=1-1)

![緑本.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/729011/85a23feb-d296-4ce0-3eba-9ce60b6d9ad1.png)

OSS-DB silverの教科書（参考書）です。通称、緑本と呼ばれています。最後には模試が用意されています。これ一冊では、試験に合格が厳しいという意見が多く、個人的にもそのように感じました。しかし、しっかりと基礎知識を学ぶことができるので、試験だけでなく業務などに活かせる内容になっています。

## [問題集（黒本）](https://www.amazon.co.jp/%E5%BE%B9%E5%BA%95%E6%94%BB%E7%95%A5OSS-DB-Silver%E5%95%8F%E9%A1%8C%E9%9B%86%EF%BC%BBVer-2-0%EF%BC%BD%E5%AF%BE%E5%BF%9C-SRA-Inc-%E6%97%A5%E6%9C%AC%E6%94%AF%E7%A4%BE/dp/4295008745)

![黒本.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/729011/aa66cec1-2f71-c147-2741-41dfcba5c97d.png)

OSS-DB silverの問題集です。通称、黒本と呼ばれています。全249問解くことができ、模試が用意されています。これ一冊では、試験に合格することが厳しいように感じました。しかし、試験では1, 2問、似た問題が出題されたような気がします。

## [Ping-t](https://ping-t.com/)
![Ping-t.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/729011/4a48e42e-5099-10ac-32e0-85a6207ab625.png)

OSS-DB silverの問題集です。全500問用意されています。ネット上では、Ping-tだけで試験に合格できるという意見が多数見受けられます。個人的にもそのように感じました。各分野別や間違えた問題に絞って問題を解くこと、模試を解くことができます。また、丁寧な解説や学習記録機能も付いているためモチベーションを保ちながら試験勉強を進めることができます。
**※上記、Ping-tの画像は試験1週間前の学習記録です。**

## [Youtube](https://www.youtube.com/watch?v=3iR6FiCSTKM&list=PL87TvKgogUwAnmwWjWFRofLQ990AOm1A-)
Youtubeで試験対策についての解説動画が上がっています。PITRなどをわかりやすく解説してくれています。


# 学習方法
- 学習期間は、およそ2か月です。

|テストまでの期間|使用した教材|
|-|-|
|1ヵ月目|参考書（緑本）, 問題集（黒本）, Youtube,|
|2ヵ月目|参考書（緑本）, 問題集（黒本）, Ping-t|

## 1ヵ月目
- **参考書（緑本）と問題集（黒本）をメインに使用。** 
- 参考書、問題集の模試の結果は、どちらとも**正解率は50%以下**、余裕で不合格。


|順序|学習内容|
|-|-|
|1|参考書を読み進める。また、参考書ではイメージしずらいところはYoutubeの解説動画を見る。|
|2|参考書の各章を読み終えるタイミングで、問題集を使ってその章の問題を解く。（理解度を確認するため）|
|3|参考書と問題集を1周したので、両者の模試を解く。|

技術の概要は理解できていましたがコマンドのオプション、付与できる権限、関数、パラメータの挙動と変更反映のタイミングといった細かいところを忘れていました。これらは、暗記分野でもあるので忘れていては点を取ることができません。そのため、次の月から試験に特化した学習を進めていきます。

## 2ヵ月目
- **Ping-tをメインに使用。**
- 試験2週間前からPing-tの模試の**正解率が80%** を超えるようになった。
- 参考書、問題集の模試の結果は、**順に正解率76, 80%。**

|順序|学習内容|
|-|-|
|1|Ping-tを使って、各分野ごとに全500問を解く。（間違えた問題はさらっと解説を読むだけ）|
|2|Ping-tを1周したタイミングで、Ping-tの模試を解く。|
|3|Ping-tの模試で間違えた問題と解説をQiitaにまとめる。（いつでも確認できるように）※もちろん公開はしていません|
|4|ミス問題が0になるまで、Ping-tの模試を解く。（Qiitaにまとめながら）|
|5|Qiitaにまとめた「間違えた問題リスト」を確認してからPing-tの模試を解くことを繰り返す。（毎日）|
|6|Ping-tのミス問題が0になったタイミングで、参考書と問題集の模試を解く。（2回目）|
|7|Ping-tの苦手な問題をまとめて確認する。また、ひたすらPint-tの模試を解き、解説を確認する。|

※順序5：試験2週間前
※順序6：試験1週間前
※順序7：試験2日前

とにかく、Ping-tを使って数をこなしました。中でも、コマンドのオプションの有無による違いやテンプレートDB、バックアップ、VACUUM、ANALYZE、テーブルの結合(JOIN)、トランザクション問題を瞬時に回答できるようにしました。模試の正解率が安定して80%を越えるようになったのは、間違えた問題を解説とともにリスト化し、毎日目を通していたからだと感じています。

# 試験の感想
**試験の難易度は、Ping-tと同等レベルだと感じました。** また、18問ミスが許される（合格ラインが64%なので）ので、合格することが目的であれば**Ping-tだけで合格できる**と思います。しかし、参考書（緑本）と問題集（黒本）の中から1, 2問、似た問題が出題されたような気がします。そのため、合格すること以外に目標がある方は、これらの教材の購入を検討してみてください。おそらく、参考書があると業務などで役に立つと思います。

# おわりに
自分は簡単なSQL文が書ける程度のレベルでした。つまり、**DB初心者でした。** ですが、色々な人の合格体験記を拝見して、そこから学習計画を立て、試験に合格することができました。この記事が少しでも受験を検討されている方の参考になれば幸いです。

# APPENDIX
公式ページに、[試験のサンプル問題](https://oss-db.jp/measures/sample)が用意されています。試験に比べて少し難しいように感じました。あまり時間をかけずに、軽く目を通すくらいでいいと思います。（似た問題が試験で1問出題されたか、されなかったくらいの印象）