- 作者: JohnL.Viescas,DouglasJ.Steele,BenG.Clothier
- 出版社/メーカー: 翔泳社
- 発売日: 2017/12/20
- メディア: Kindle版
- この商品を含むブログ (1件) を見る
三連休を利用してEffective SQLを読んだので、読後の感想を書いておきます。
個人的には概ね楽しく最後まで読み進められました。
対象読者について
書籍の最初に対象読者は特に明確には書かれていません。
読んでみた感想としては以下のような人が対象とされているかなという印象です。
ですが、この本自体はSQLやリレーショナルデータベース(以下RDB)の入門書ではないため、読んだ限りでは以下は最低限できなければ読み進めるのが難しいかもしれません。
また以下はこの本では対象外になるかと思います。
とはいえ、ちょっとSQLをかじったくらいの知識でも概ね理解できる内容だと思います。
中級者以上はより深い理解や知識の再確認のために、初心者であればSQLの練習も兼ねてGitHubのデータを利用してじっくり取り組むのもありかと思います。
感想
他の書籍との違い
これまで読んでみたいくつかのSQLに関する本との違いとしては以下があげられると思います。
とくに1.が非常にしっかりしており、SQL Server, IBM DB2, Oracle, MySQL, PostgreSQL については違いがある場合には、その旨が記載されています。そのためどのRDBMSを利用していても役に立つ内容になっています。
2.に関してはどちらかと言えばというくらいですが、GitHubにサンプルで利用されているデータベースも用意されており、練習用に用意された簡易のものより実用に向けた内容となっているかと思います。
書籍自体について
- 項目でまとまっており理解しやすい
- 包括的に内容が書かれているため、全体で1つの内容となっている
- 300ページ未満であり、最初から全部読んでもそれほど苦労しない
1.に関しては、Effectiveシリーズに通じて言えることかもしれません。
項目ごとにまとまっていて、最後にポイントが書かれているので理解しやすいです。
2.は項目ごとでありながら、全体を通して利用されている内容があると言ったことが挙げられます。
その際に参照先が明記されているので、気になった場合は都度その項目を参照しながら読み進めることができます。
詳細な内容
詳細な内容についてはすでにすごく良い書評がすでにあるようなので、こちらを参照していただくほうが良さそうです(他人任せ)
ただしこちらは原著の書評のようなので、訳書のほうについての内容を書かせてもらおうと思います。
- 日本語として読みやすい
- 適度に訳注が入れられている
- 理解しやすさのために例示を原著から一部変更している
- カラーではない
全体的に読みにくいということはなく、スラスラと読み進められました。
この本を読んで全体的に今までアプリケーションで解決しようとする部分が多かったことが、SQLでも解決できるということを改めて認識しました。とくにORマッパーを利用する機会が増えるとこのあたりを忘れがちなので、この本を通して原点に立ち返ることができたかなと思います。
個人的にはタリーテーブルというのを初めてしっかりとした内容で読んだので、この部分は学ぶことが多かったです。またあまり複雑なSQLを書く機会が少ないので、サブクエリの章は理解していないこともあり、じっくり読みました。それと仕事ではMySQLがメインで利用することが多かったので、CTEなどの特定のRDBMSでは利用できない機能について知る機会にもなりました。
時間があれば、実際に実行してみながら進めてみようかなと思います。