×
リレーショナルデータベースの基礎
身近な例として、ネット通販の注文管理システムを考えてみましょう。注文情報、顧客情報、商品情報を1つの巨大な表にまとめて記録すると、同じ顧客の住所変更のたびに何十行ものデータを更新する手間(更新異常)が発生します。これを防ぐために「顧客テーブル」「商品テーブル」「注文テーブル」を個別に用意し、「注文テーブル」内に「顧客ID」や「商品ID」を保持させることで、データの重複を最小限に抑えつつ効率的に注文情報を検索・管理できます。
SELECT 
    c.customer_name,
    p.product_name,
    o.order_date
FROM orders o
JOIN customers c ON o.customer_id = c.customer_id
JOIN products p ON o.product_id = p.product_id
WHERE o.order_date >= '2026-01-01';

もう少し詳しく