リレーショナルデータベースって、そもそもナニ?

データを「どこに・どうやって」しまうか、考えたことありますか?
お店で働いたことがある方なら、こんな経験があるかもしれません。
- 商品の在庫をノートに書いていたら、どのページに何が書いてあるかわからなくなった
- お客さんの注文表と在庫表が別々で、いちいち見比べるのが大変だった
こういった「データの管理」は、コンピュータの世界でもずっと大きなテーマでした。そこで生まれたのがデータベースという仕組みです。そして今や世界中のシステムで使われているのが、リレーショナルデータベース(RDB, RDBMS) です。
データベースとは?
「データベース」とは、ひと言でいえばデータを整理して保存しておく場所です。ただ保存するだけじゃなく、「あとで素早く取り出せる」「間違いが起きにくい」「複数の人が同時に使える」といった工夫がされています。
Excelのファイルもデータの保存場所ではありますが、データベースはもっと大量のデータを、もっと確実に扱えるように設計された専用の仕組みです。
リレーショナルデータベースの「リレーショナル」って?
「リレーショナル(Relational)」は、日本語にすると「関係の」という意味です。リレーショナルデータベースでは、データを表(テーブル) の形で保存します。Excelのシートをイメージすると近いです。そして、その複数の表どうしを「関係(リレーション)」でつなぐことができる——それがこの仕組みの最大の特徴です。
表でデータを管理するって、どういうこと?
たとえば、あなたがネットショップを運営しているとしましょう。
「顧客」テーブル
| 顧客ID | 氏名 | メールアドレス |
| 1 | 田中 太郎 | tanaka@example.com |
| 2 | 鈴木 花子 | suzuki@example.com |
「注文」テーブル
| 注文ID | 顧客ID | 商品名 | 金額 |
| 101 | 1 | ワイヤレスイヤホン | 8,000円 |
| 102 | 2 | スマホケース | 1,500円 |
| 103 | 1 | 充電ケーブル | 1,200円 |
「注文」テーブルの顧客IDが、「顧客」テーブルの顧客IDと結びついています。これが「リレーション(関係)」です。たとえば「顧客ID:1の人の注文履歴を全部見たい」と思ったとき、この関係をたどれば田中さんの注文(101番と103番)をすぐに取り出せるわけです。
なぜ一つの大きな表にまとめないの?
「全部ひとつの表に書けばいいじゃないか」と思うかもしれません。
たとえばこんなふうに:
| 注文ID | 氏名 | メール | 商品名 | 金額 |
| 101 | 田中 太郎 | tanaka@example.com | ワイヤレスイヤホン | 8,000円 |
| 102 | 鈴木 花子 | suzuki@example.com | スマホケース | 1,500円 |
| 103 | 田中 太郎 | tanaka@example.com | 充電ケーブル | 1,200円 |
でも、これには問題があります。
- 無駄が多い:田中さんの名前とメールアドレスが何度も繰り返されている
- 修正がたいへん:田中さんのメールアドレスが変わったら、全行を探して直さなければならない
- ミスが起きやすい:うっかり片方だけ直すと、データが矛盾してしまう
テーブルを分けておけば、顧客情報は1か所にだけ存在します。変更も1回で済み、矛盾も起きません。これを「データの正規化」といいます。
データはどうやって取り出すの? → SQL の登場
リレーショナルデータベースからデータを取り出したり操作したりするには、SQL(エスキューエル) という専用の言語を使います。たとえば「田中さんの注文履歴をすべて取得したい」場合、SQLではこう書きます:

日本語に訳すと「注文テーブルと顧客テーブルを顧客IDでつなぎ、氏名が田中太郎の注文ID・商品名・金額を取ってきて」という意味です。SQLはプログラミング言語の中でも比較的読みやすく、英語に近い感覚で書けるのが特徴です。
どんなところで使われているの?
リレーショナルデータベースは、私たちの生活のあらゆる場所で活躍しています。
| 場面 | 使われ方の例 |
| ECサイト | 商品・在庫・注文・ユーザー情報の管理 |
| 銀行・金融 | 口座残高や取引履歴の管理 |
| 病院・医療 | 患者情報や電子カルテの管理 |
| SNS | ユーザー情報・投稿・フォロー関係の管理 |
| 業務システム | 社員情報・給与・勤怠の管理 |
スマホのアプリ、会社の業務システム、ネットショッピング——実は、ほぼどこかにリレーショナルデータベースが使われています。
代表的なリレーショナルデータベースの製品
RDBにはさまざまな製品があります。
- MySQL / MariaDB:Webサービスで広く使われる定番の無料ソフトウェア
- PostgreSQL:高機能で信頼性が高く、企業でも多く採用される無料ソフトウェア
- Oracle Database:大規模な商用システムで広く使われるプロ向け製品
- Microsoft SQL Server:Windows環境や企業システムに強いMicrosoft製品
- SQLite:小規模・組み込み用途に使われる軽量タイプ
合わせて読みたい
まとめ:リレーショナルデータベースの3つのポイント
最後に、大切なことをおさらいしましょう。
- データを「表(テーブル)」の形で整理して保存する
- 複数の表を「関係(リレーション)」でつなぎ、効率よく管理する
- SQL という言語を使ってデータを操作する
「データを表でまとめて、表どうしをつなぐ」——シンプルなこのアイデアが、50年以上にわたって世界中のシステムを支え続けています。最初は難しそうに聞こえるリレーショナルデータベースですが、根っこにあるのは「データを整理して、使いやすくする」というごく自然な発想です。この記事が、その入り口を少し身近にするきっかけになれば幸いです。

