Muni Bus

パソコンの操作方法や設定方法を忘れないようにメモしています。ブログを一回引っ越ししているので、所々表示がかなり乱れています・・・

【MySQL】二つのテーブルを一つに結合(内部結合)する

内部結合(結合すべき行がない行は出力しない結合)するには、join句を使う。以下はあらかじめ用意した二つのテーブル(charaとseiyu)を内部結合した例。結合相手がない左側(chara)の4行目と右側(seiyu)の4行目は出力されていないことがわかる。

mysql> select * from chara;
+------------------+-------------------+------+------------+
| name             | title             | no   | vc         |
+------------------+-------------------+------+------------+
| ライスシャワー   | ウマ娘            |   30 | miwami01   |
| スーパークリーク | ウマ娘            |   45 | kyuki01    |
| メイショウドトウ | ウマ娘            |   58 | mwatada01  |
| ライザ           | ライザのアトリエ2 |    1 | ynoguchi01 |
| フィー           | ライザのアトリエ2 |    2 | mwatada01  |
| 黒川あかね       | 推しの子          |    6 | miwami01   |
+------------------+-------------------+------+------------+
6 rows in set (0.00 sec)
mysql> select * from seiyu;
+-----------+------------+
| id        | name       |
+-----------+------------+
| miwami01  | 岩見舞菜香 |
| kyuki01   | 優木かな   |
| mwatada01 | 和多田美咲 |
| machico01 | Machico    |
+-----------+------------+
4 rows in set (0.00 sec)
mysql> select chara.name, chara.title, seiyu.name
    -> from chara join seiyu
    -> on chara.vc = seiyu.id;
+------------------+-------------------+------------+
| name             | title             | name       |
+------------------+-------------------+------------+
| ライスシャワー   | ウマ娘            | 岩見舞菜香 |
| スーパークリーク | ウマ娘            | 優木かな   |
| メイショウドトウ | ウマ娘            | 和多田美咲 |
| フィー           | ライザのアトリエ2 | 和多田美咲 |
| 黒川あかね       | 推しの子          | 岩見舞菜香 |
+------------------+-------------------+------------+
5 rows in set (0.00 sec)