データベースとSQLを体験しよう

表の形でデータを管理するリレーショナルデータベースを、SQLやボタンで操作して確かめます。

見本を選ぶか、SELECT 文を書いて「実行」を押してください

Ctrl+Enter(Macは ⌘+Enter)でも実行できます

表を選んでから、選択・射影・結合をボタンで試します。下に、同じ操作をする SQL 文が表示されます

表

選択(行を選ぶ)

条件に合う行(レコード)だけを取り出します。

射影(列を選ぶ)

残したい列(フィールド)だけを取り出します。

結合(表をつなぐ)

2つの表を、共通の列の値が等しい行どうしでつなぎます。

を で

同じ内容を、表の分け方を変えて記録しています。表の形を選んでから、「操作してみる」のボタンを押しましょう

データベースとは

たくさんのデータを、あとから探したり、追加したり、書きかえたりしやすいように、決まった形で整理して蓄えたものをデータベースといいます。学校の名簿や成績、図書館の蔵書、ネットショップの商品と注文、交通系ICカードの利用記録など、身の回りの情報システムの多くは、裏側でデータベースを使っています。

データベースを管理するソフトウェアをDBMS(データベース管理システム)といいます。DBMS は、データを決まった構造で蓄えるだけでなく、データの矛盾が起きないように保つこと(一貫性)、必要なデータを効率よく取り出すこと、たくさんの人が同時に使っても困らないようにすること、障害が起きたときに元に戻すことなどを受け持ちます。

リレーショナルデータベース

データベースにはいくつかの種類がありますが、最も広く使われているのがリレーショナルデータベース(関係データベース)です。データを、行と列からなる表(テーブル)で管理します。

外部キーを使うと、表どうしを関連づけられます。生徒の表に部活の名前や活動場所を書かなくても、部活IDを手がかりに部活の表から取り出せるのです。

選択・射影・結合

リレーショナルデータベースでは、表から必要なデータを取り出すために、次の3つの関係演算がよく使われます。

操作内容SQL での書き方
選択条件に合う行だけを取り出すWHERE 組 = 2
射影必要な列だけを取り出すSELECT 氏名, 組
結合共通の列で2つの表をつなぐJOIN 部活 ON 生徒.部活ID = 部活.部活ID

「選択・射影・結合」のタブでは、これらをボタンで1つずつ試せます。操作をするたびに、同じ結果を作る SQL 文が下に表示されます。たとえば、生徒の表と部活の表を結合すると、部活IDが空の生徒(斎藤)は、相手の表に同じ値がないので結果に入りません。

SQL の基本

リレーショナルデータベースを操作するための言語が SQL です。SQL は国際規格(ISO/IEC 9075)で定められていて、多くの DBMS で同じように使えます。データを取り出すときは SELECT 文を使い、次の順に書きます。

SELECT 取り出す列
FROM 表
JOIN 別の表 ON つなぐ条件
WHERE 行の条件
GROUP BY まとめる列
HAVING まとめた結果の条件
ORDER BY 並べる列 DESC
LIMIT 件数;

SQL には、データを追加する INSERT、書きかえる UPDATE、削除する DELETE などもあります。このページでは、データを壊さずに試せるよう、検索の SELECT 文だけを実行できるようにしています。

正規化と異常

1枚の表にすべてを書きこむと、同じ情報が何度も出てきます。たとえば、部活の活動場所を生徒1人ずつの行に書くと、同じ部活の生徒の数だけ活動場所がくり返されます。このとき、次のような困りごと(異常)が起きます。

こうした問題が起きないように、表を適切に分けることを正規化といいます。くり返しをなくして1つのセルに1つの値だけにした形を第1正規形、主キーの一部だけで決まる列を別の表に分けた形を第2正規形、主キー以外の列で決まる列をさらに分けた形を第3正規形といいます。正規化を進めると、どの情報も1か所だけに書かれるようになり、書きかえは1回で済みます。「正規化」のタブで、表の形を変えながら同じ操作をして、結果を比べてください。

たくさんの人が同時に使うとき

銀行の口座や座席の予約のように、たくさんの人が同時に同じデータを書きかえる場面では、処理の順番によっては残高や空き席の数が合わなくなるおそれがあります。DBMS は、ひとまとまりの処理(トランザクション)を、すべて行うか、まったく行わないかのどちらかにしたり、だれかが書きかえている間はほかの人が同じデータを書きかえられないようにしたり(排他制御)して、データの整合性を保っています。

表の形ではないデータベース

データベースは表の形のものだけではありません。項目(キー)と値(バリュー)の組でデータを記録するキー・バリュー形式のデータベースなどもあり、こうした表以外の形式に対応したデータベースは、まとめて NoSQL と呼ばれます。大量のデータを扱う場面で使われています。

使い方

このページの生徒や成績のデータは、すべて架空のものです。小数は小数第3位を四捨五入して表示しています。

この教材を使う授業

情報Ⅰ 授業の進め方ガイドでは、この教材を次の授業で使います。ねらい・導入の問い・50分の流れ・確認問題をまとめています。

出典

© 2026 情報ラボ ホーム カリキュラム対応表 授業の進め方ガイド 問題解決の手法 画像のデジタル化 音のデジタル化 ラスタとベクタ 画像のビット演算 色の表し方 情報デザイン HTMLとCSS 2進数・16進数 数の表し方と計算の誤差 文字コード データはすべて0と1 パリティマジック コンピュータのしくみ 論理回路 計測と制御 アルゴリズム プログラム表記を動かす ネットワークのしくみ Webページが表示されるまで 電子メールのしくみ 情報システムとデータの流れ 表計算のしくみ データベースとSQL シミュレーション データの分析 テキストマイニング 機械学習 回帰と予測 クラスタリング 統計的推測 著作権と知的財産 個人情報とプライバシー パスワードの強さ 暗号のしくみ ハッシュと電子署名 あやしいメールを見分ける データ量の計算 データ圧縮 JPEGのくり返し保存 RFID(電子タグ) 運営者情報・お問い合わせ プライバシーポリシー 更新履歴