SQL基礎トレーニング

SELECT・WHERE・ORDER BY・GROUP BY・JOINを、4択問題で10問ずつ練習できます。
学習状況

まだ履歴がありません。

SQLについて

SELECT・WHERE・ORDER BY・GROUP BYなど、SQLの基本構文を問題形式で確認できます。

詳しい解説を見る →

SQLの復習

SELECTで列、FROMで表、WHEREで行の条件を指定します。GROUP BYは集計単位、HAVINGは集計結果の条件です。

詳しい解説を読む →

SQLの学習ガイド

この演習は、知識を確認するだけでなく、解き方を説明できるようになることを目標にしています。まず以下の例題を確認し、その後で上のトレーニングに挑戦してください。

解き方の例:部署ごとの社員数を集計する

SELECT department_id, COUNT(*) FROM employees GROUP BY department_id; と書くと、部署IDごとの行数を集計できます。

学習の進め方

取得列、集計関数、GROUP BYの対応関係を確認します。

間違えやすいポイント

GROUP BYを使う場合、集計していない列の扱いに注意します。

詳しい解説記事を読む → 学習ロードマップへ →

SQL基礎:例題から理解して復習する

練習問題を解く前後に、計算・考え方の根拠を確認しましょう。答えを覚えるのではなく、別の数値や条件でも同じ手順を再現できることが目標です。

例題:条件に合うデータを抽出

employees表から部署IDが10の社員名を取得するなら、SELECT name FROM employees WHERE department_id = 10; と書きます。SELECTは列、WHEREは行の条件です。

WHEREとHAVINGの使い分け

WHEREは集計前の行を絞り込み、HAVINGはGROUP BYで集計した結果を絞り込みます。部署別の社員数が3人以上ならHAVING COUNT(*) >= 3です。

現場ではどう使う?

売上分析では注文データを日付や商品別に集計します。たとえばGROUP BY product_idで商品別の注文件数を算出できます。

復習問題

部署ごとの人数を表示するSQLは?(答えを見る)

SELECT department_id, COUNT(*) FROM employees GROUP BY department_id; です。

より詳しい解説を読む → 学習ロードマップへ →