無料

SQL入門:データベース操作のきほん

SELECT、INSERT、UPDATE、DELETE に加え、WHERE、JOIN、GROUP BY、サブクエリなど SQL の基礎構文を、ブラウザ上のサンプル DB を操作しながら学べる無料コースです。データ分析やアプリ開発で SQL を初めて学ぶ社会人や学生を対象としています。約 18 時間 (1 日 30 分 × 36 日) で 71 レッスンを修了でき、修了後は業務データの抽出、集計、簡単なレポート作成を SQL で行えるようになります。

レッスン

71件

所要時間

-

ランク

初級

学習環境

ブラウザ完結

目標

SQLを使いこなし、適切なデータベース設計ができるようになります。

概要

SELECT、INSERT、UPDATE、DELETE に加え、WHERE、JOIN、GROUP BY、サブクエリなど SQL の基礎構文を、ブラウザ上のサンプル DB を操作しながら学べる無料コースです。データ分析やアプリ開発で SQL を初めて学ぶ社会人や学生を対象としています。約 18 時間 (1 日 30 分 × 36 日) で 71 レッスンを修了でき、修了後は業務データの抽出、集計、簡単なレポート作成を SQL で行えるようになります。

できるようになること

SELECT、INSERT、UPDATE、DELETEを使いこなせる

JOINを使った複雑なクエリを書ける

正規化の原則に基づいたテーブル設計ができる

インデックスを適切に設計できる

パフォーマンスを意識したクエリを書ける

よくある質問

前提知識・必要な環境

必須

  • 基本的なプログラミングの概念

推奨

  • Excelなどでのデータ操作経験

環境

ブラウザ完結(インストール不要)

必要ツール: ブラウザ内SQLエディタ, PostgreSQL

内容

テキストでの解説

0

レッスン

コーディングの問題

61

レッスン

クイズ問題

10

レッスン

監修

ゆめさくコード編集部

プログラミング学習をもっと身近に。初心者から実務レベルまで、わかりやすいコンテンツをお届けします。

生田 陸人

ゆめさくエンジニア / 現役ソフトウェアエンジニアRuby on Rails・Nuxt.js・Next.js・CakePHPなどの実務の開発をベースに、学習コンテンツを作成しています。

レッスン

このコースの導入スライド

レッスンの最初に、図と短い言葉で学ぶ内容をつかみます。

導入スライドをすべて見る

SQL入門 - ファイルではなくデータベースを使う理由

保存するだけならファイルでもできる

在庫数をテキストファイルに書いておけば、たしかに保存はできます。それでも業務システムがデータベースを使うのは、保存できるかどうかとは別の理由があるからです。

1人で使っているうちは、この方法で何の問題も起きません。問題が出るのは2人目からです。

在庫数を書いたファイルを開くと、中身はこれだけです。

$ cat stock.txt 100

1 / 3

ファイルではなくデータベースを使う理由

SQL入門 - なぜ表を分けて持つのか

1つの表に全部書いてみる

注文を記録する表に、ついでに顧客名とメールも書いておけば、その表を見るだけで済みます。実際に書いてみると、同じ人が2回目の注文をした時点で困りごとが出てきます。

同じメールが2行に書かれています。3回目、4回目と注文が増えたらどうなるかを、次の枚で見てください。

田中さんが 2 回注文すると、表はこうなります。

注文ID 顧客名 メール 金額 1001 田中 tanaka@x.com 2500 1003 田中 tanaka@x.com 1300

1 / 4

なぜ表を分けて持つのか

データベースの仕組み

データベースは、こういう表の形でデータを持っています。この表そのものをテーブルと呼び、縦の列をカラム、横の行をレコードと呼びます。

products

商品ID商品名価格
10001商品A2500
10002商品B1000
10003商品C1300

縦に見れば商品IDだけが並び、横に見れば商品1件ぶんがまとまっています。

データベースが持つ表は1枚だけではありません。顧客の表、注文の表と、用途ごとに何枚も抱えています。

1 / 5

テーブル・行・列の基本

SQL入門 - 主キーとNULL制約

PRIMARY KEY は2つを同時に守る

行を1本に決めるには、主キー列に NULL も同じ値も許せません。

id INT PRIMARY KEY は、id に NOT NULL と UNIQUE を同時に効かせます。

条件主キー列での約束
NOT NULLすべての行に値が入る
UNIQUE全行を通じて値が重複しない
PRIMARY KEY2つを同時に満たし、行を一意に識別する

1 / 4

主キーとNULL制約

このコースの動く図解

動かしながら、仕組みや変化を目で確かめられます。

動く図解をすべて見る

こんな人におすすめ

バックエンド開発を学びたい人

を目指す人

データベースを扱う業務に就く人

を目指す人

データ分析でSQLを使いたい人

を目指す人

おすすめしない人

  • ×プログラミングに全く触れたことがない人

腕試しに、1問だけ解いてみる

司書「この蔵書データ、集計できますか?」

1問目は無料で解けます。教材を見ないで、依頼と完成条件だけを読んで書いてみてください。

SQL道場 図書館DBに挑む10問

前提が不安な方へ

先にこちらを通しておくと、つまずきにくくなります

次に学ぶなら

このコースを終えたあとに進むと、無理なく続けられます

あわせて学びたい

同時に進めると、理解が早くなる組み合わせです