【ステップ2】SQL入門|SELECT〜JOIN〜集計で“データを取りに行ける人”になる

SQL入門の学習範囲(SELECT・JOIN・集計)を示すステップ記事のアイキャッチ 学び方・ロードマップ

ステップ1では、Excelを使った集計・ピボット・グラフを通して、「手元の表データを整理して説明できる力」 を鍛えました。

ステップ2ではもう一歩進んで、

「データベースから、必要なデータを自分で取りに行ける人」

を目指します。そのための武器が SQL(エスキューエル) です。


このステップで目指すゴール

まずはゴールをはっきりさせておきます。

ステップ2のゴール

  • 基本的なSQL文(SELECT / WHERE / GROUP BY / ORDER BY / JOIN)が書ける
  • 顧客ごとの売上合計や、月別の件数推移など、シンプルな集計クエリを自分で組み立てられる
  • 既存のSQLを見て、「だいたい何をしているのか分かる」レベルになる

ここでは、いきなり高度なチューニングや複雑なサブクエリを目指す必要はありません。

「Excelでは扱いにくいデータ量でも、SQLなら集計して持ってこられる」状態

を作るのが、ステップ2の目的です。


なぜSQLが重要なのか

1. ほとんどの企業のデータは「データベース」に入っている

売上、顧客、アクセスログ、業務システムのデータ…

多くの会社では、データはExcelではなくデータベースに保存されています。

SQLが書けると、

  • 「この条件のデータだけ出してほしい」
  • 「月別の集計を見たい」
  • 「特定の顧客だけを抽出したい」

といった要望に対して、自分でデータを取りに行けるようになります。


2. BIツール・機械学習でも「前処理」でSQLが使われる

BIツール(Tableauなど)やPythonで分析するときも、

  • 事前にSQLでデータを加工しておく
  • ビューを作成してから可視化ツールに渡す

という流れはよくあります。

SQLを知っておくと、後のステップ(BI・Python)にスムーズにつながるので、投資対効果が高いスキルです。


学習の全体イメージ(1〜2ヶ月)

ステップ2は、1〜2ヶ月くらいで次の順番で進めるイメージがおすすめです。

  1. SQLの基本構造に慣れる
  2. WHEREで絞り込みができるようになる
  3. GROUP BYで集計ができるようになる
  4. ORDER BYで並べ替え・LIMITで上位だけ見る
  5. JOINでテーブルを結合できるようになる
  6. 実務に近いミニ課題をこなす

それぞれ順番に見ていきます。


1. SQLの基本構造に慣れる

SQLの基本的な形は、とてもシンプルです。

SELECT 列名 
FROM テーブル名;
  • SELECT:何を(どの列を)取り出すか
  • FROM:どこから(どのテーブルから)取り出すか

まずはこの形に慣れるところから始めましょう。

この段階でやること

  • サンプル用のデータベース(オンライン環境やローカル)を用意する
  • SELECT * FROM テーブル名; で、テーブルの中身を眺めてみる
  • 特定の列だけ指定して取得してみる

2. WHEREで絞り込みができるようになる

次に、条件を指定して絞り込む WHERE 句を覚えます。

SELECT 列名 
FROM テーブル名 
WHERE 条件;

代表的な使い方

  • 数値条件:売上 > 100000
  • 文字条件:顧客区分 = ‘法人’
  • 日付条件:注文日 >= ‘2024-01-01’
  • 複数条件:AND / OR を使った組み合わせ

学び方のポイント

  • 「Excelのフィルタでやっていたことを、SQLで書くとどうなるか?」 を意識するとイメージしやすくなります。
  • シンプルな条件から始めて、徐々にAND / OR を組み合わせていきましょう。

3. GROUP BYで集計ができるようになる

SQLの大きな醍醐味は、まとめて集計ができることです。

SELECT 顧客ID, SUM(売上金額) AS 合計売上 
FROM 売上テーブル 
GROUP BY 顧客ID;

よく使う集計関数

  • SUM:合計
  • COUNT:件数
  • AVG:平均
  • MAX / MIN:最大・最小

学び方のポイント

  • 「Excelのピボットテーブルでやっていたことを、SQLで書いたらどうなるか?」 を意識して、1パターンずつ練習するのがおすすめです。
  • 顧客別、月別、商品別など、切り口を変えた集計をいくつか試してみましょう。

4. ORDER BYとLIMITで結果を整える

集計ができるようになったら、結果を並べ替える・上位だけを見る操作も身につけます。

SELECT 顧客ID, SUM(売上金額) AS 合計売上 
FROM 売上テーブル 
GROUP BY 顧客ID 
ORDER BY 合計売上 DESC 
LIMIT 10;
  • ORDER BY:並べ替え(ASC:昇順/DESC:降順)
  • LIMIT:上位何件まで表示するか(DB製品によって書き方は少し違う)

これができると、

  • 「売上TOP10の顧客」
  • 「直近30件の注文」

など、実務でよく見る一覧をSQLで作れるようになります。


5. JOINでテーブルを結合できるようになる

最後の大きな山が JOIN(結合) です。

SELECT 売上.注文ID, 売上.顧客ID, 顧客.顧客名, 売上.売上金額 
FROM 売上テーブル AS 売上 
JOIN 顧客マスタ AS 顧客 
ON 売上.顧客ID = 顧客.顧客ID;

JOINが必要になる場面

  • 「売上テーブル」には顧客IDしか入っていない → 顧客名を出したいときに、顧客マスタと結合する
  • 「商品ID」だけしかない → 商品マスタとJOINして商品名を出す

学び方のポイント

  • 最初は INNER JOIN だけに絞ってOK
  • 「左側が売上」「右側がマスタ」といった役割関係を意識すると理解しやすくなります

6. 実務に近いミニ課題をこなす

上の要素が一通り触れたら、最後はミニ課題で総復習します。

例としては、

  • 「2024年の月別売上推移を出し、前年と比較する」
  • 「法人顧客だけを対象に、売上TOP10を出す」
  • 「売上テーブル+顧客マスタをJOINして、顧客名・区分付きの一覧を作る」

などです。

「Excelならどうやるか?」を考えたあとに、「同じことをSQLでどう書くか?」を考える

という流れで練習すると、ExcelとSQLの頭の切り替えもうまくいきます。


よくあるつまずきポイントと対処法

① いきなり難しい問題集から始めてしまう

→ 対処:

  • まずは SELECT / WHERE / GROUP BY / JOIN だけに絞る
  • 一問一答形式の「基礎問題」を一周してから、応用問題に進む

② 「写経」で終わってしまい、応用が効かない

→ 対処:

  • 教材の例題を写したあとに、自分で数字や条件を少し変えて再実行してみる
  • 「この条件を変えたら結果はどう変わるか?」を毎回確認する

③ JOINが怖くて手が止まる

→ 対処:

  • 必要以上に種類(LEFT JOIN・RIGHT JOIN・FULL…)を覚えようとしない → 最初は INNER JOIN に集中でOK
  • 「左側=明細(売上など)、右側=マスタ」と役割を固定してイメージする

次のステップとロードマップへの接続

ステップ2(SQL入門)まで終えられれば、

  • Excelでの集計・グラフ
  • SQLでの抽出・集計

という強力な二刀流になっています。

次のステップでは、

【ステップ3】Tableau入門|ダッシュボードの作り方と基本手順(初心者向け)

に進みます。SQLで作ったデータをBIに渡して、「刺さる可視化」と「ストーリーのある説明」ができるようになるフェーズです。


データ・AI学習の全体像(ステップ0〜6)をまだ読んでいない方は、先にこちらの記事から全体の地図をチェックしてみてください。

社会人のデータ分析ロードマップ|Excel→SQL→BI→Pythonで半年〜1年の全体像


また、Excelの基礎がまだ不安な方は、ステップ1の記事からじっくり固めるのがおすすめです。

【ステップ1】Excel基礎|関数・ピボットで“数字に強い人”になる(初心者向け)


ステップ2は、最初は少しとっつきにくく感じるかもしれませんが、

一度「SELECT〜JOIN」までつながると、一気に世界が広がるポイントです。

毎日少しずつでもSQLを書き続けて、「データを自分で取りに行ける20代」を一緒に目指していきましょう。

タイトルとURLをコピーしました