SQLは、エンジニアやデータサイエンティストはもちろん、それ以外の営業職やマーケティング職などの人々にも学んでほしい言語です。
プログラミング言語と聞けば
というイメージがあると思いますが、SQLは言語の中でも比較的簡単な言語です。
今のビジネスにはデータが不可欠なので、データを扱うSQLは学習コストも低いかつそのリターンも大きいという言語なのです!
本記事では、そんなSQLについて、実際にどう勉強していけばいいかということを、私の実体験と周囲のエンジニアの意見を参考にまとめました。
何も知らない状態の初心者に向けた記事となっているので、これからSQLを学びたいという方は参考にしてください。
オススメの参考書や動画教材も紹介しているので爆速で勉強してスキルを身につけてしまいましょう!
目次
SQLとは
SQLとは、「Structured Query Language」の略称で、データベースを操作するための言語です。
SQLは以下の3つの機能を持ちます。
- データの操作(DML)
- データの定義(DDL)
- データの制御(DCL)
データの操作とは、データを取り出したり、変更したり、削除したりという機能です。
一般的にデータを扱うと言われるとイメージされるものですね。
エンジニアやデータサイエンティスト以外の人は、基本的にこのデータの操作の機能を学べば、SQLを理解したと言ってもいいと思います。
データの定義とは、データを格納するテーブルの操作を行う機能です。
自分で一からデータベースを作ろうとしていたり、サービスに新しい機能を実装しようとすると、勉強する必要があります。
データの制御とは、データを触ることができる権限の操作を行う機能です。
データベースを管理する立場にある人は、勉強する必要があります。
SQLをお勧めする理由
SQLの勉強をお勧めする理由は、以下の三つです。
オススメの理由
- 学習コストが低い。
- データに基づく意思決定が自分でできる。
- web開発やデータサイエンスなど他の職種に対する基礎知識となる。
学習コストが低い
SQLは基礎を身につけるだけであれば、少ない時間で身につけることができます。
というのも、初期に身につけるべき知識や単語が20-30語ほどしかないからです。
しかも、SQLというものは、データの操作をより直感的に理解できるように考えられた言語であるため、簡単な英語が理解できれば、なんとなく意味がわかるような構造になっています。
そのため、覚えなきゃと身構えなくても、使ってるうちに自然と覚えることができます。
下のUdemy講座はセール中に購入すると1000~2000円程度で受講でき、1日もあれば基本的な部分はマスターできるので、軽い気持ちで勉強を初めてみても良いと思います。
はじめてのSQL ・データ分析入門 -データベースのデータをビジネスパーソンが現場で活用するためのSQL初心者向コース
SQLの基礎がわかりやすく解説されている圧倒的人気のSQL講座です。実践的に動画を見ながら学べるので楽しくスキルアップできます。
データに基づく意思決定が自分でできる。
SQLを書くことができると、データから様々な情報を得ることができます。
わざわざ過去の資料からほしい数値を出している部分を探したり、excelを使って数値をいじらなくても、SQLを書けば一発でほしい情報が手に入ります。
最近は、データをデータベースで管理する企業も増えてきているため、SQLを使ったデータ可視化はこれからも増えていくでしょう。
簡単なデータであれば、excelを使った分析やデータ管理ツールを使った分析をしてもいいですが、複雑な分析となるとやはりSQLを使った分析が必要となります。
普通であれば、こう言った複雑な分析はデータサイエンティスト(会社によってはアナリストなど様々な呼び方をされている)に頼んで行います。
しかし、データサイエンティストに頼むほどではないが、この分析結果が欲しいと思う場面も多くあるでしょう。
こう言った時に、エンジニアやデータサイエンティストの手を借りなくても自分で分析結果を得ることができるということは、自分の提案や行動に根拠を持たせることができ、成功する確率を高めてくれます。
web開発やデータサイエンスなど他の職種に対する基礎知識となる
SQLは、web開発やデータサイエンスを行うにあたっての基礎知識です。
SQLを理解できていれば、これらの職の人たちとデータ関連の話をスムーズに行っていくことが可能です。
web開発やデータサイエンスは、これからどんどん発展して様々な領域に進出していくことが考えられ、これらの人々との会話の理解できるということは、とても重要なことだと思います。
また、自分自身がweb開発やデータサイエンスの道に進みたいと思った時も、SQLを知っていればスムーズに学んでいけます。
SQLを学ぶにあたっての必須項目
SQLが簡単とはいえ、細かい部分まで勉強しようと思うと、やはり時間がかかります。
そのため、SQLを初心者が学ぶ際に必須の項目をまとめました。
必要なモノ
- データの項目とテーブルの選択(SELECT、 FROM)
- データの条件絞り込み(WHERE、AND、IN、LIKEなど)
- データの並び替え(ORDER BY、ASC、DESC)
- テーブルの結合(JOIN)
- 副問合せ
- グループ化と集計関数(GROUP BY、SUMなど)
- データの追加、変更(INSERT、 UPDATEなど)
これらの項目を覚えれば、基本的な分析は行えます。
他にもSQLで覚えるべきところはありますが、まずは、これらを身につけるところから始めましょう。
SQLのおすすめの勉強方法
では、先ほどの必須項目から応用知識までを身につける勉強方法を3STEPで紹介します。
それぞれが身につけたいレベルに合わせて、どのSTEPまでやるかを決めてください。
- STEP1:SQLの概念が理解できる。
- STEP2:SQLを使った基礎的な分析ができる。
- STEP3:データサイエンスレベルの分析ができる。
では、順番に勉強方法を紹介していきたいと思います。
STEP1:SQL攻略で勉強する。
まずは、SQLの概念を理解するために、登録不要で無料のサイトSQL攻略で勉強を始めましょう。
SQL攻略では、実際にSQLを書きながらSQLを学んでいくことができます。
また、上記で説明したSQLを学ぶにあたっての必須項目を網羅しています。
このSQL攻略では、SQLを勉強する際に必要なデータベースの作成やSQLを書く際の環境構築を既に行っているため、自分でこれらの環境を整えることなく、始められるというのも初心者に優しいです。
このSQL攻略で勉強を行うと、まずSQLを書くということへの抵抗感がなくなります。
SQLってこんな感じに書いていくんだ、という感覚を手軽に身につけることができるため、最初のステップとしてお勧めしています。
STEP2:初心者向けの本を使って勉強する
手を動かしてSQLを理解できたら、次は初心者向けの知識を網羅的にまとめた本で勉強していきましょう。
SQLを使いこなそうと思うと、幅広い知識の定着が必要になるため、少し大変ですが、一冊本を読むという工程は必要です。
しかし、一度手を動かしてSQLを学んでいるため、初心者向けの本であれば速いペースで流し読みしても理解できると思います。
最初に説明した通り、SQLはさほど難しい言語ではないため、本を一冊読むと言っても、労力はさほど掛からないです。
本に関してですが、わかりやすく、かつ辞書代わり使えそうなくらい網羅的にまとめられている本であれば基本的になんでもいいです。
どれがいいかわからないという方は、「これからはじめるMySQL入門」という本がお勧めです。
私もこれを使って勉強しましたが、網羅的でわかりやすい本でした。
STEP3:実際の業務分析で使われているSQLを見て勉強する
最後に、実際に業務で使われているSQLを見て勉強していきましょう。
これをすることで、ある分析をしたいときに、どういったSQLを書くのかという肌感がわかってくるようになります。
可能なのであれば、web制作やデータ分析のインターンに参加するか、実際にweb制作やデータ分析を行っている会社で働いてみるのが一番良いです。
しかしながら、それができないという方も多いでしょう。
そう言った方は、「ビッグデータ分析・活用のためのSQLレシピ」という本を使って勉強するのが、お勧めです!
この本では、実際に現場で行われている実践的なデータ分析とそれを実現するためのSQLが書かれています。
かなり細かい分析まで書かれているため、これを一冊読んで理解ができれば、データサイエンスレベルの分析であっても、できるようになります。
現場のデータサイエンティストも読んでいるぐらいの良書なので、ぜひ読んでみてください。
まとめ
今回は、SQLの勉強方法について、目指す段階に合わせて、3STEPで紹介しました。
SQLは自分で書くことで理解が深まります。
ですので、最初の1STEP目は面倒臭がらず、必ず自分でSQLを書いてくださいね。
一人でも多くの人がSQL楽しい!と思えるようになれば私としても嬉しいです。
本での勉強のハードルが高いという方は、オンライン動画学習のudemyで学ぶのが、短い時間で学習できるので使ってみてください。
動画学習を使ったコスパ良い勉強手順が気になった方は、以下記事で解説しているので、参考にしてみてください。
-
【全3ステップ】初心者がUdemyでSQLを勉強する方法
データ分析が重要となってきている今の世の中において、SQLは全ての職の人が学んでいて損のない言語です。 また、SQLは他のプログラミング言語と比べて、学習のコストが低いため、気軽に短い時間で基礎を身に ...
続きを見る
-
【5選】プログラミングスクールを現役エンジニアが本気で厳選してみた
こんにちは、フルスタックエンジニアのぐぅと申します^ ^ プログラミングは一番再現性が高く、誰もが身につけられるスキルです。「コードが正しければ動く」と言う不変の真理があるだけなので、プログラミング方 ...
続きを見る