0Pricing
SQL Academy icon

SQL Academy

SQLDataDatabaseBackendBeginner

SQL Academy で SQL を学んで、データベースを効果的に管理・クエリします。

🤖 AI 搭載📚 46 コース👥 100,000+ ユーザー⭐ 4.9 評価
コース概要

SQL: すべてのデータプロフェッショナルが必要とする言語

SQL はリレーショナルデータベースの標準言語です。PostgreSQL、MySQL、SQLite、およびほぼすべての本番データシステムにおいて、データの保存、取得、変換に使用されます。バックエンド API を構築する場合でも、分析を実行する場合でも、データベーススキーマを設計する場合でも、SQL は必須スキルです。このトラックは、初めての SELECT ステートメントから PostgreSQL 固有の機能 (JSONB、window functions、PostGIS、水平シャーディング) までの全スペクトラムをカバーしています。

学習内容

基礎から始めます。テーブルの作成、WHERE を使用した行のフィルタリング、ORDER BY を使用したソート、GROUP BY を使用した集計です。その後、複数テーブルの JOIN パターン、サブクエリ、CTE、EXISTS、ANY、ALL を使用した相関サブクエリを習います。高度なトピックには、window functions、WITH RECURSIVE を使用した再帰クエリ、GROUPING SETS、ROLLUP、CUBE、PostgreSQL 配列と JSONB、トリガー、ストアドプロシージャ、行レベルセキュリティ、PostGIS を使用した地理空間クエリが含まれます。トラックは DBA とアーキテクトレベルで終了します。大規模スキーマ移行、テーブル分割、レプリケーション、高可用性、VACUUM と ANALYZE を使用したパフォーマンスチューニング、水平スケーリングのためのシャーディングです。

学習パス

46 コースが A1 から C2 に進行します。最初の 2 コースは、完全な初心者向けのデータベースとリレーショナルコンセプトの概要です。A1 と A2 コースはコアなクエリをカバーしています。SELECT Mastery、Filtering Patterns、Aggregations and GROUP BY、Multi-Table Queries: JOIN Basics、および日付、文字列、null、条件ロジックの操作です。B1 コースは Window Functions Deep Dive、Subqueries and CTEs、Recursive Queries with WITH RECURSIVE、PostgreSQL JSON and JSONB へとステップアップします。B2 はパフォーマンスと本番環境の懸念に対応します。Query Performance: EXPLAIN and Planning、Index Strategies、Transactions and Concurrency Control、Row-Level Security & Access Control です。C1 と C2 コースは Schema Migrations at Scale、Partitioning Large Tables、Geospatial SQL with PostGIS、Event Sourcing & Temporal Tables、Sharding and Horizontal Scaling で終了します。

仕組み

各コースは短い実践的なレッスンに分割されており、組み込み SQL エディタで完了できます。クエリがリアルタイムフィードバックを返します。AI チューターはいつでも利用可能です。クエリが予期しない結果を返す理由や、インデックスが実行計画を実際にどのように変更するかを説明してくれます。

学習を始める →

学び方

🎯
インタラクティブレッスン
リアルタイムフィードバック付きの実践的なコード演習
🤖
AIチューター
わからないときは、AIが即座にサポート
💻
組み込みエディタ
ブラウザで直接コードを書いて実行
🏆
認定資格
コース完了時に認定資格を取得
カリキュラム

46コース

SQL Academyラーニングパスのすべてのコース

01

SQLとデータベース入門

A13レッスン

データベースとSQLの世界への第一歩です。経験は必要ありません。

02

SQLの基礎:テーブル、行、列

A14レッスンPRO

SQLの旅をゼロから始めます。リレーショナルデータベースとは何か、データがテーブルに整理される仕組み、主キーが重要な理由、NULLの動作、日々使うデータ型を理解します。

03

SELECTを極める

A14レッスンPRO

SELECT文を自在に使えるようになります。列を射影し、式を組み立て、WHEREで行を絞り込み、結果セットを並べ替え、大きな出力を適切にページ分割します。

04

結果の並べ替え:ORDER BY、LIMIT、Top-N

A14レッスンPRO

データを整理しましょう。1つまたは複数の列で並べ替え、順序を制御し、LIMITとOFFSETで必要な行だけを取得します。

05

フィルタリングのパターン

A24レッスンPRO

日常的に使うフィルタの道具を習得します。LIKEによるパターンマッチング、INによる集合への所属判定、BETWEENによる範囲チェック、COALESCEによるNULL値の安全な処理を学びます。

06

集計とGROUP BY

A24レッスンPRO

集約関数でデータを要約し、1つ以上の列でグループ化し、HAVINGでグループを絞り込み、集約における典型的なNULLの落とし穴を避けます。

07

複数テーブルクエリ:JOINの基礎

A24レッスンPRO

テーブルを結合します。リレーショナル結合モデル、INNER JOINとOUTER JOINの違い、エイリアスと自己結合によって同じテーブルを2回クエリする方法を学びます。

08

日付と時刻の扱い方

A24レッスンPRO

最も扱いが難しいデータ型、時刻を扱います。日付の算術、要素の抽出、タイムゾーンの管理、期間比較レポートの作成を学びます。

09

文字列関数とテキスト検索

A24レッスンPRO

SQLでテキストを切り出し、整形し、検索します。連結、トリミング、パディング、置換を行い、自然言語クエリ向けの全文検索ベクトルを使います。

10

実践INSERT/UPDATE/DELETE

A24レッスンPRO

読み取りから書き込みへ進みます。複数行の挿入、ON CONFLICTによるupsert、JOINを使った更新、関連データを孤立させない安全な削除を学びます。

11

NULLを扱う

A24レッスンPRO

SQLで最も扱いの難しい値をマスターします。三値論理を理解し、IS NULL、COALESCE、NULLIFで欠損データを安全に処理します。

12

CASEによる条件分岐

A24レッスンPRO

クエリに分岐ロジックを追加します。CASE式を使って、SELECTの中でデータを分類、ラベル付け、変換します。

13

SQLの数値と数学

A24レッスンPRO

自信を持って数値を扱いましょう。必要な計算を正確に行うための算術、丸め、キャスト、便利な数学関数を学びます。

14

DISTINCTと重複の削除

A24レッスンPRO

常にクリーンで一意な結果を得ましょう。DISTINCT、DISTINCT ON、重複排除のテクニックで、重複する行を処理します。

15

制約とデータ整合性

B14レッスンPRO

不正なデータを入口で止めます。NOT NULL、CHECK、UNIQUE、FOREIGN KEY、DEFAULT、生成列を使い、データベースにビジネスルールを適用させます。

16

初めてのデータベース設計プロジェクト

B14レッスンPRO

すべてを組み合わせます。ユーザー、投稿、コメントを含む実際のブログデータベースをゼロからモデル化し、キーと型を選び、インデックスを追加し、テストデータを投入します。

17

サブクエリとCTE

B14レッスンPRO

クエリを入れ子にし、名前を付けて組み立てます。スカラー、行、テーブルのサブクエリ、相関サブクエリと非相関サブクエリの違い、通常のCTEと再帰CTEを習得します。

18

ウィンドウ関数徹底解説

B14レッスンPRO

Modern SQLの最も強力な機能を使いこなします。SQLだけで累計、順位、移動平均、時系列パターンを計算します。

19

集合演算とピボットパターン

B14レッスンPRO

UNION、INTERSECT、EXCEPTで結果セットを結合します。CASE式とPostgreSQLのcrosstabで縦持ちデータを横持ちのレポートに変換します。

20

高度なJOINパターン

B14レッスンPRO

INNER JOINとLEFT JOINの先へ進みます。CROSS JOIN、LATERAL、アンチ結合、セミ結合を使い、多方向のJOINを高速化する方法を学びます。

21

PostgreSQLのJSONとJSONB

B14レッスンPRO

ドキュメントを第一級のデータとして扱います。JSONBを安全に保存、検索、インデックス化し、JSONBでモデル化すべき場合と正規化すべき場合を理解します。

22

ビューとマテリアライズドビュー

B14レッスンPRO

複雑なクエリを再利用可能なオブジェクトに変換します。論理的な再利用には通常のビュー、透過的な抽象化には更新可能ビュー、高速化にはマテリアライズドビューを使います。

23

自己結合と階層データ

B14レッスンPRO

テーブルを自身に関連付けます。管理者、カテゴリー、友人リストをモデル化し、親子関係をクエリします。

24

WITH RECURSIVEによる再帰クエリ

B14レッスンPRO

純粋なSQLでツリーやグラフをクエリします。再帰共通テーブル式を使い、深さを問わず階層をたどります。

25

GROUPING SETS、ROLLUP、CUBE

B14レッスンPRO

複数のレベルでデータを一度に集計します。数十個のクエリをUNIONで結合せず、 小計と総計を作成します。

26

EXISTS、ANY、ALLと相関サブクエリ

B14レッスンPRO

強力な述語を書きましょう。相関サブクエリとEXISTS、IN、ANY、ALLを使って、複雑な条件を表現します。

27

PostgreSQLで配列を扱う

B14レッスンPRO

1つの列にリストを保存してクエリします。PostgreSQLらしい方法で、配列データを作成、検索、展開します。

28

クエリパフォーマンス:EXPLAINと実行計画

B24レッスンPRO

推測をやめ、データベースが実際に行っていることを読み取ります。EXPLAINを習得し、スキャンと結合の戦略を見分け、見つけた遅いクエリを修正します。

29

インデックス戦略

B24レッスンPRO

インデックスは「高速」と「使い物にならない」を分ける要です。インデックスの種類、列の順序、部分インデックスと式インデックス、健全な状態を保つ方法を学びます。

30

トランザクションと同時実行制御

B24レッスンPRO

正しく動作するマルチユーザーシステムを構築します。ACID、4つの分離レベル、デッドロック、楽観的ロックと悲観的ロックのトレードオフを理解します。

31

トリガーとストアドプロシージャ

B24レッスンPRO

適切な場合にデータベースへ処理を移します。トリガー、PL/pgSQL関数、自動更新される監査テーブルを作成します。

32

高度なインデックス作成と検索

B24レッスンPRO

B-treeの先へ進みます。トライグラムであいまい検索を行い、tsvectorで自然言語を検索し、PostGISで地理空間をクエリし、pgvectorでベクトルを埋め込みます。

33

ウィンドウ関数・応用

B24レッスンPRO

ウィンドウ関数の後半を習得します。フレーム句、バケット化、ダッシュボードのように読みやすいレポート作成パターンを学びます。

34

SQLで学ぶ時系列データのパターン

B24レッスンPRO

数十億件のメトリクスを保存・検索します。TimescaleDBのハイパーテーブル、連続集約、圧縮、保持ポリシーを使います。

35

モダンなSQLワークフロー

B24レッスンPRO

エンジニアらしくSQLを書きます。dbtで分析パイプラインを構築し、SQLFluffでリントし、dbt testsとGreat Expectationsでテストし、CIを通じてスキーマ変更をリリースします。

36

行レベルセキュリティとアクセス制御

B24レッスンPRO

行レベルでデータを保護します。ロール、権限、ポリシーを管理し、ユーザーが見るべきデータだけを表示します。

37

バックアップ、リストア、災害復旧

B24レッスンPRO

データを決して失わないようにします。バックアップ、ポイントインタイムリカバリ、リストアを計画・実行し、障害に備えます。

38

大規模環境でのスキーママイグレーション

C14レッスンPRO

稼働中の本番データベースへ、ダウンタイムなしでスキーマ変更をリリースします。オンラインマイグレーション、同時作成インデックス、ゼロダウンタイムの名前変更を習得します。

39

大規模テーブルのパーティショニング

C14レッスンPRO

宣言的パーティショニングで数十億行のテーブルを管理します。レンジ、リスト、ハッシュの各パーティショニングを選び、クエリ実行時のパーティションプルーニングや、パーティションの動的な追加・切り離しを行います。

40

レプリケーションと高可用性

C14レッスンPRO

データベースを稼働させ続け、データを安全に保ちます。WALをレプリカへストリーミングし、論理レプリケーションを使い、リーダーをフェイルオーバーさせ、読み取りをフォロワーへ振り分けます。

41

パフォーマンスチューニング:VACUUM、ANALYZE、統計情報

C14レッスンPRO

DBAの定番を学びます。MVCCを理解し、肥大化に対処し、プランナーの統計情報を最新に保ち、インデックスオンリースキャンを活用します。

42

データベースのオブザーバビリティとDBAスキル

C14レッスンPRO

本番環境でデータベースを運用します。pg_stat_statementsで主要クエリを特定し、pgBadgerでログを分析し、コネクションプーリングとキャパシティプランニングを行います。

43

PostGISによる地理空間SQL

C14レッスンPRO

世界をクエリしましょう。PostGISの空間SQLで点、線、ポリゴンを保存し、位置に関する問いに答えます。

44

データウェアハウスとスター・スキーマ

C14レッスンPRO

分析のためのSQLを設計します。ファクトテーブルとディメンションテーブル、スター・スキーマ、大規模なレポート用の分析クエリを構築します。

45

イベントソーシングとテンポラルテーブル

C14レッスンPRO

現在だけでなく履歴も保持します。追記専用イベント、監査ログ、SQLでのタイムトラベルクエリをモデル化します。

46

シャーディングと水平スケーリング

C24レッスンPRO

1台のマシンで処理しきれなくなったら、シャーディングを行います。シャーディング戦略を選び、シャード間クエリに対処し、シャーディングすべきでないタイミングも判断できるようになります。

よくある質問

よくある質問

SQL Academyコースは無料ですか?

はい。SQL Academyコースは無料で始められ、インタラクティブレッスンをすべて無料で完了できます。オプションのPRO登録で、高度なAIツールと共有可能な認定資格がアンロックされます。

SQLを学ぶのに事前経験は必要ですか?

いいえ。コースは基礎から始まり、より高度なトピックへと進むので、SQLの事前経験がなくても始められます。

CoddyKitでSQLをどのように学びますか?

実践しながら学びます。短いインタラクティブレッスンは、わかりやすい説明と、リアルタイムで実行される実践的なコード演習が組み合わさっており、24時間対応のAIチューターがわからないときにいつでもサポートします。

SQL Academyを完了すると認定資格がもらえますか?

はい。PRO学習者は試験を受けて、SQL Academyコースの完了を証明する共有可能な認定資格を取得できます(認証コード付き)。

スマートフォンでSQLを学べますか?

はい。CoddyKitはウェブとネイティブiOS・Androidアプリで利用でき、どのデバイスでもSQLを学習でき、進捗がすべてのデバイスで同期されます。

SQL Academyを今すぐ始める

AI搭載レッスンでプログラミングをマスターする数千人の学習者に参加しましょう。

無料で始める →すべてのコースを見る