本日は、MySQLを使って、「1対多」のリレーションの関係を持ったテーブルで
SQL文を使って操作します。
テーブルの構造は、下記のようになっています。
拠点テーブルと部署テーブルがあります。
拠点テーブルには、IDと拠点名(office)があります。
部署テーブルには、IDと部署名(department)と外部キーとしてoffice_idを持っています。
MySQL上のテーブル構造です。
officeテーブル
departmemtテーブル
最初にselect分でそれぞれのテーブルのすべてのレコードを表示します。
select * from office;
select * from departments;
では、left joinを使い下記のような結果が表示できるようにSQL文を作成します。
表示したい結果は下記です。
拠点名, 部署名
SQL文と結果です。
select a.id ,a.office, b.department
from offices a
left join departments b
on a.id = b.office_id
以上、1対多のリレーション間のテーブルをleft joinを使って結合したsql文でした。