ずっと無料 · 登録不要

いちばんやさしい
SQL の学び方。

ブラウザの中で動く本物の SQLite データベース。手作りの演習が 31 本。詰まったときのヒントと、クエリが正しくなった瞬間のフィードバックつきです。

31 本の演習 20万人+ 2017 年からの受講者 0円 ずっと 0 登録の手間
query.sql SQLite · ブラウザ内で実行
SELECT name, num_books_read
FROM family_members
WHERE num_books_read >= 180;
✓ ブラウザ内で動きます · 2 行 Ctrl + ⏎ で実行
namenum_books_read
Dave200
Mary180

本物のデータベースに問い合わせてみませんか?

SQL Easy は Beekeeper Studio のチームが作っています。MySQL、Postgres、SQLite、SQL Server などに対応した、無料・オープンソースの SQL エディタ兼データベース管理ツールです。

Beekeeper Studio を入手 →
カリキュラム

31 本の演習。本物の SQLite。余計なものはなし。

レッスン 01 から順に進めても、必要なトピックへ飛んでも構いません。

31 本すべてのレッスンを見る →
演習はこんな形です

読む。書く。実行する。

基礎 · 31 本中 05

WHERE … 以上

SQL では >=<= のような不等号が使えます。family_members のうち num_books_read >= 180 の行をすべて返してください。

この演習をやってみる →
https://sql-easy.com/ja/lessons/05-where-greater-than-or-equal/
SELECT *
FROM family_members
WHERE num_books_read >= 180;
✓ 2 行 · 期待される結果と一致
利用者の声

SQL が嫌いではなくなった人たち。

「SQL の講座を 6 つ試しました。最後までやり切れたのはここだけです。終わらせるものが特になくて、少しずつ難しくなる演習が並んでいるだけだったからだと思います。」
Maya R.
データアナリスト(ジュニア)
「大学の授業では JOIN に 2 週間かけました。ここでは 40 分で腑に落ちました。自分で試して壊せたからです。」
Jordan K.
情報系学部 2 年
「ブラウザで SQL を実行できたのが決め手でした。セットアップも Docker も不要で、書いて実行するだけ。独学にぴったりです。」
Sam P.
転職組(元シェフ)
なぜ sql を学ぶのか

SQL は一度学べば、毎日使えます。

SQL は、テクノロジー業界でいちばん地味な超能力です。生まれて 40 年、まったく流行りではありませんが、データを扱う人にとって最も役に立つスキルであり続けています。マーケターも SQL を使います。プロダクトマネージャーも使います。エンジニアも使います。弁護士にも使う人がいます。

SQL を学ぶということは、誰かが数字を出してくれるのを待たなくてよくなるということです。先週何人が登録して、その翌週に何人が戻ってきたか知りたい。それはクエリです。どの商品が売れていて、どれが倉庫で埃をかぶっているか知りたい。それもクエリです。SQL は「データについて疑問がある」を「答えがある」に変えます。

SQL とは、正確には何でしょう

SQL は Structured Query Language(構造化問い合わせ言語)の略です。Postgres、MySQL、SQLite、SQL Server、Oracle、BigQuery、Snowflake など、数多くのリレーショナルデータベースと対話するための標準的な方法です。要所を押さえたいくつかのコマンドで、行を追加し、既存の行を更新し、不要なものを削除し、そして(ほとんどの場合)必要なデータを取得できます。

SQL は宣言的です。何が欲しいかを伝えれば、どう取ってくるかはデータベースが考えます。答えの形を書くだけでよく、手順を書かなくてよい。この気持ちよさが SQL の魅力の一つです。

SQL は誰のためのもの?

  • プログラミング未経験の初学者。 SQL は最初の言語として最もやさしい部類です。覚える語彙は少なく、反応は速く、結果が目に見えます。
  • 開発者。深夜 2 時に「left join のやり方」を Stack Overflow に貼り付ける生活から卒業したい人へ。
  • データアナリストやデータサイエンティスト。Python や R は書けるのに、データウェアハウスへの問い合わせになると自信がなくなる人へ。
  • キャリアチェンジ中の人。アナリティクス、データエンジニアリング、データ寄りのプロダクト職を目指す人へ。
  • 興味のあるすべての人。毎日使っているアプリの裏で動いているデータベースが気になる人へ。

SQL の習得にはどれくらいかかる?

思っているより短くて済みます。基礎(SELECT、WHERE、ORDER BY、集計関数)は 2 晩ほど。JOIN はもう 2 晩ほど。あとはほとんどパターン認識で、同じ形の問題に何度も出会います。このサイトの 31 本の演習を終えるころには、実際のプロジェクトで役に立つだけの力がついています。

SQL を速く身につける方法

SQL を学ぶ方法は、SQL を書くことです。眺めているだけでは身につきません。解説を読むのも悪くありませんが、本物のデータベースの前に座ったとたん、言葉は消えてしまいます。そこでこのサイトは逆のことをします。どのレッスンも、小さな本物のデータベース(ブラウザで動き、登録もインストールも不要)と短い問いでできています。問いを読み、クエリを書き、実行し、行を見る。違っていたら直して、もう一度。詰まったときのためにヒントのボタンがあります。

それだけです。教育方針はこれで全部です。このループを 31 回まわせば、あなたはチームの中で GROUP BY が何をしているかを本当に理解している人になります。

どんな SQL コマンドを学べる?

現場のアナリストや開発者が毎日使う手札を、ひととおり扱います。

  • SELECT でデータを読む。列の指定、DISTINCT、AS による別名、CASE 式まで。
  • WHERE で行を絞る。等号、不等号、AND、OR、IN、BETWEEN、LIKE、IS NULL。
  • ORDER BY と LIMIT で並べ替えと件数の制御。
  • 集計: COUNT、SUM、AVG、MAX、MIN、そして GROUP BY と HAVING。
  • JOIN、LEFT JOIN、自己結合、テーブルと列の別名。
  • 文字列と論理の関数: SUBSTR、COALESCE、CASE WHEN。
  • INSERT、UPDATE、DELETE、CREATE TABLE、DROP TABLE をコマンドリファレンスの水準で。

よくある質問

SQL は大文字と小文字を区別しますか?
キーワード(SELECT、FROM、WHERE)は区別しません。列名と見分けやすいように、ここでは大文字で書いています。テーブル名と列名はデータベースによって区別されることがあるので、安全のため小文字の識別子を使いましょう。

このサイトはどの SQL を教えていますか?
SQLite です。WebAssembly にコンパイルでき、ブラウザで動くからです。うれしいことに、ここで学ぶ内容の 95% は Postgres、MySQL、SQL Server でもそのまま通用します。違う部分(日付関数、ウィンドウ関数の書き方、ベンダー独自の拡張)は、基礎が固まっていればすぐに覚えられます。

SQL はいつか時代遅れになりますか?
少なくとも私たちが生きているうちはなりません。SQL は 40 年にわたり「次に来るもの」論争を静かに勝ち抜いてきました。NoSQL、NewSQL、ドキュメントストア、グラフデータベース。どれも有用ですがニッチで、リレーショナルな SQL を標準の座から追い落としたものはありません。AI 向けのデータウェアハウスでさえ、問い合わせの主役として SQL インターフェイスを備えています。

なぜ無料なのですか?
このサイトについてをご覧ください。要点だけ言うと、SQL を使える人が増えることは世の中にとって良いことで、私たちは講座ではなくデータベース GUI で収益を得ているからです。

学ぶ SQL から、仕事で使う SQL へ

文法が身についたら、次に必要になるのは本物の SQL エディタです。Beekeeper Studio は開発者に愛されているオープンソースの SQL エディタ。無料、クロスプラットフォーム、主要なデータベースにすべて対応しています。

Beekeeper Studio をダウンロード →