インターン先で急にSQLが必要と言われ、急遽身に着ける必要が生じ、本当に何も知らない状態からのスタートだったのですが、結構簡単に身について、今はそこそこスムーズにデータを取り出すことが出来るようになりました。
メモがてら何をやったか書いていこうと思います。
目次
スポンサーリンク
まず「SQLとはなんぞや」というところから始まった
話には聞いたことがありました。
「何か.....データを扱える......らしい.....???」
みたいな状態でした笑
そこで、まずはいきなりSQL操作の練習を始めるよりも、SQLって何ですか、どんなことが出来て、何が便利なんですかということを知ろうと考えました。
はじめてでもわかるSQLとデータ設計
それにあたり読んだのがこの本です。
・はじめてでもわかるSQLとデータ設計
SQL関連の本をAmazonで物色していた時に、コメントで「非常にわかりやすい」「意外と中級者でも学べることが多い」「この本読んでわからなかったら、SQL向いてない」と書かれていたので、まあわかりやすいのだろうと思って最初に読む本に決めました。
実際私が期待していた通りの本で、SQLっていったい何なの?というところから始まり、一通り雰囲気をおさえることが出来ました。
また中盤以降は簡単なSQL操作まで学ぶことが出来、この本一冊でもう簡単な操作までなら身に着けることが出来ます。
SQLzoo
知識としては理解しました。ただ、やはり練習をしたい。環境を整えるのは面倒くさい。
そんなことを考えていたら友人から「SQLzoo」が良いよとアドバイスを頂きました。
ここですね。
https://sqlzoo.net/wiki/SQL_Tutorial/ja
実際にクエリを打ち込んで、正しい結果を得られるかクイズ形式で練習することが出来ます。
答えが分からない場合、ちょっとネットで検索すれば、こんな感じで答えが落ちているので大丈夫です。
SQLZOO「SELECT within SELECT Tutorial」 回答集 #初心者 - Qiita
なるほど、こんな感じでSQLというのは使えるのか~とイメージを掴むことが出来ました。
より実践的な知識
最後のダメ押しとして、一冊実践的な本を読みました。
zooと先ほどの本ではカバー出来ていない、How toをこの本でおさえることが出来たのはでかいです。
SQL実践入門
・SQL実践入門
SQL、ループがないけどどうすんの?みたいな話とかCASEの詳しい使い方とかが特にためになりました。
まだ全ての内容をインプットできているわけではありませんが、非常にわかりやすく実践的。
どう書くのが効率が良く、コストを少なく抑えられるのかが仕組みベースで説明されているのも非常にわかりやすい!
SQLは内部でデータ操作方法を勝手に選択してくれるので、どうしてもブラックボックス感というか、何をやっているのかイメージしにくい感じがありますが、あまり高度なところへは踏み込まず、しかし一方で行っている操作をイメージしやすくなるよう説明がなされています。