データ分析の仕事では、グラフを作る前に「必要なデータを正しく取り出し、集計できる状態にする」作業が欠かせません。その中心的な手段の一つがSQLです。
2026年4月のデジタルスキル標準Ver.2.0では、AI活用の前提となるデータ整備・管理・利活用の重要性を踏まえ、データマネジメント類型が新設されました。AI時代だからこそ、元になるデータを理解し、必要な形に抽出できる基礎力の価値は高まっています。
SQLはデータ分析で何をするためのもの?
SQLは、リレーショナルデータベースのデータを検索・追加・更新・削除するために使われる言語です。分析では特に、SELECTによる抽出、WHEREによる絞り込み、GROUP BYと集約関数による集計、JOINによるテーブル結合などを頻繁に使います。
たとえばECサイトの注文データから「2026年9月の商品別売上」を知りたい場合、分析担当者は必要な期間の行だけを選び、商品ごとにグループ化し、売上を合計します。
まず覚えたいSQLの基本
SELECT:必要な列を取り出す
SELECTは取得したい列を指定します。
例:SELECT product_name, sales FROM orders;
分析では「全部の列を取る」のではなく、目的に必要なデータを選ぶ意識が重要です。
WHERE:対象を絞り込む
WHEREは条件に合う行だけを対象にします。PostgreSQLの公式ドキュメントでも、WHERE条件を満たさない行は出力対象から除外されると説明されています。
例:WHERE order_date >= ‘2026-09-01’ AND order_date < ‘2026-10-01’
GROUP BY:同じ値ごとにまとめる
GROUP BYは同じ値を持つ行をグループ化します。SUM、COUNT、AVGなどの集約関数と組み合わせることで、商品別売上、顧客別注文数、月別平均単価などを計算できます。
例:SELECT product_name, SUM(sales) FROM orders GROUP BY product_name;
HAVING:集計後の結果を絞る
WHEREが集計前の行を絞るのに対し、HAVINGはGROUP BYなどで作ったグループの集計結果を条件で絞ります。
例:HAVING SUM(sales) >= 100000;
実務例:商品別売上を集計する
目的:9月の注文から、商品別の売上合計を求め、10万円以上の商品を確認する。
SELECT product_name, SUM(sales) AS total_sales
FROM orders
WHERE order_date >= ‘2026-09-01’ AND order_date < ‘2026-10-01’
GROUP BY product_name
HAVING SUM(sales) >= 100000
ORDER BY total_sales DESC;
この例には、実務でよく使う考え方がまとまっています。
1. WHEREで分析対象期間を決める
2. GROUP BYで商品単位にまとめる
3. SUMで売上を合計する
4. HAVINGで集計結果を絞る
5. ORDER BYで比較しやすく並べる
SQLを学ぶときは構文を個別に暗記するより、「分析目的から必要な処理を逆算する」方が実務につながります。
JOINが必要になる理由
実際のデータベースでは、注文、商品、顧客などが別々のテーブルに分かれていることがあります。その場合、注文テーブルの商品IDと商品マスタをJOINして商品名やカテゴリーを付ける、といった処理が必要です。
ここで重要なのは、JOINの種類だけでなく「どのキーで結合すると1対1・1対多になるのか」を理解することです。結合条件を誤ると行数が意図せず増え、集計値まで誤る可能性があります。
SQLを学ぶときの実務的な順番
1. SELECT / FROM
2. WHERE
3. ORDER BY / LIMIT
4. COUNT / SUM / AVG
5. GROUP BY / HAVING
6. JOIN
7. CASE式
8. サブクエリ・CTE
9. ウィンドウ関数
最初から高度な構文を覚える必要はありません。売上集計、顧客分析、アクセスログなど、身近なデータを題材に「問い→SQL→結果確認」を繰り返す方が定着しやすくなります。
生成AIがSQLを書ける時代に学ぶ意味
生成AIに自然言語で依頼すればSQLを作れる場面は増えています。しかし、テーブル構造や集計単位を誤解したSQLは、文法上正しくても間違った数字を返すことがあります。
AIが生成したSQLを利用するときも、「どのテーブルを使っているか」「WHERE条件は正しいか」「JOINで重複していないか」「集計単位は目的と一致するか」を確認できる基礎知識が必要です。
まとめ
SQLはデータ分析の入口となる実務スキルです。まずSELECT、WHERE、GROUP BY、集約関数、JOINを使い、必要なデータを正しく取り出して集計できることを目標にしましょう。
AI・データ活用が広がるほど、分析結果の根拠となるデータを理解する力は重要になります。SQLを「コードを書く技術」だけでなく「データに質問するための言語」と捉えると、学習目的が明確になります。