🗃️SQLLearn
ブラウザだけで学習できる
🗃️

SQLを学ぼう

SELECT文からウィンドウ関数、データベース設計まで。 体系的なカリキュラムでSQLをマスターしましょう。

25
カテゴリ
164
レッスン

学習ロードマップ

あなたの目標に合わせて学習パスを選ぼう

🗃️

SQL基礎

SELECT、WHERE、JOINの基礎

SELECT文、WHERE句、JOINなど、SQLの基本構文を体系的に学びましょう。データベースを扱う上で欠かせない知識を身につけます。

学べること

  • SELECT・FROM・WHERE
  • AND・OR・NOT演算子
  • ORDER BY・LIMIT
  • GROUP BY・HAVING
  • INNER JOIN・LEFT JOIN
  • サブクエリ・EXISTS

コード例

-- 売上上位の顧客を取得
SELECT
  c.name,
  SUM(o.amount) AS total
FROM customers c
INNER JOIN orders o ON c.id = o.customer_id
WHERE o.created_at >= '2024-01-01'
GROUP BY c.id, c.name
ORDER BY total DESC
LIMIT 10;
📐

データベース設計

DDL、制約、正規化

CREATE TABLE、制約、正規化理論を学び、堅牢なデータベーススキーマを設計できるようになりましょう。

学べること

  • CREATE TABLE・データ型
  • PRIMARY KEY・FOREIGN KEY
  • UNIQUE・CHECK制約
  • ALTER TABLE
  • 第1〜第3正規形
  • ER図設計

コード例

-- ECサイトのテーブル定義
CREATE TABLE products (
  id       INTEGER PRIMARY KEY,
  name     TEXT    NOT NULL,
  price    INTEGER NOT NULL CHECK (price >= 0),
  stock    INTEGER NOT NULL DEFAULT 0,
  category_id INTEGER REFERENCES categories(id)
);
🚀

実践・運用

ウィンドウ関数、パフォーマンス、セキュリティ

ウィンドウ関数、CTE、パフォーマンスチューニング、セキュリティなど、実務で差がつく応用知識を習得します。

学べること

  • ウィンドウ関数・RANK
  • WITH・再帰CTE
  • EXPLAIN・実行計画
  • インデックスチューニング
  • SQLインジェクション対策
  • トランザクション・ACID

コード例

-- 月別売上ランキング(ウィンドウ関数)
SELECT
  month,
  product,
  revenue,
  RANK() OVER (
    PARTITION BY month
    ORDER BY revenue DESC
  ) AS rank
FROM monthly_sales;

準備はできた?

まずはSQL基礎から始めて、着実にスキルを積み上げていきましょう。

SQL基礎から始める

他の言語も学ぼう

同じシリーズの学習アプリで他の言語もマスターしよう