【SQL】JOINでの複数テーブル結合

SQL
※本ページにはプロモーションが含まれます
※本ページにはプロモーションが含まれます
スポンサーリンク

SQLのJOINとは

SQLのJOINは、複数のテーブルを関連付けて結果セットを取得するための方法です。

JOINを使用すると、異なるテーブル間で共有されるキーまたは関連する列を使用して、データを組み合わせることができます。

SQLのJOINの基本的な使用方法

一般的なJOINの種類には、以下のようなものがあります。

INNER JOIN

  • INNER JOINは、結合するテーブルの共通する値のみを含む結果セットを返します。共通の値がない場合、その行は結果に含まれません。
SELECT 列名 
FROM テーブル1 
INNER JOIN テーブル2 
ON テーブル1.キー = テーブル2.キー

LEFT JOIN

  • LEFT JOINは、左側のテーブル(左テーブル)のすべての行と、右側のテーブル(右テーブル)の共通する行を含む結果セットを返します。共通の行がない場合、右側のテーブルの値はNULLになります。
SELECT 列名 
FROM テーブル1
LEFT JOIN テーブル2 
ON テーブル1.キー = テーブル2.キー

RIGHT JOIN

  • RIGHT JOINは、右側のテーブル(右テーブル)のすべての行と、左側のテーブル(左テーブル)の共通する行を含む結果セットを返します。共通の行がない場合、左側のテーブルの値はNULLになります。
SELECT 列名 
FROM テーブル1
RIGHT JOIN テーブル2 
ON テーブル1.キー = テーブル2.キー

FULL JOIN

  • FULL JOINは、左側のテーブルと右側のテーブルのすべての行を含む結果セットを返します。共通の行がない場合、該当する側の値はNULLになります。
SELECT 列名 
FROM テーブル1
FULL JOIN テーブル2 
ON テーブル1.キー = テーブル2.キー;

これらは一般的なJOINの種類ですが、データベースシステムによっては異なる種類のJOINがサポートされている場合もあります。JOINを使用することで、複数のテーブルを関連付けて必要な情報を取得することができます。

プログラムの環境構築からわからない、、」「データサイエンティストになるには?」など自己学習に不安がありましたら、以下のスクールのご活用をご検討ください!

スタアカTech AcademyCode Lesson
データサイエンティストを目指すことに特化したスクールです。現役エンジニアから学べるオンラインに特化したプログラミングスクールです。転職の支援はもちろん、副業に活かせるスキルの習得から、副業の仕事紹介まで寄り添います。「未経験から独学でプロを目指す」というコンセプトのもと、実践的なコーディング学習ができるプログラミング学習サービスです。
★コース例
・データサイエンティスト概要コース
・Python基礎コース
・データ加工集計可視化コース
・統計学概要コース
・SQL基礎コース
 など
コース例
・Pythonコース

・AIコース
・データサイエンスコース
★提供スキル
HTML, CSS, JavaScript(DOM), React, Vue, TypeScript, Java, PHP, Python, SQL

USINGでの列名の指定

“USING”句を使用すると、JOIN操作を行う際に共通の列名を指定することができます。これにより、テーブル間で列名を明示的に指定する必要がなくなります。

以下は、”USING”句を使用したJOINの例です:

SELECT 列名 
FROM テーブル1
JOIN テーブル2 
USING (共通の列名)

このクエリでは、テーブル1とテーブル2の共通の列名を指定してJOINを行っています。

例えば、”users”テーブルと”orders”テーブルの”user_id”列を使用してJOINを行う場合、次のようなクエリになります:

SELECT users.user_id, users.name, orders.order_id
FROM users
JOIN orders 
USING (user_id)

このクエリでは、”users”テーブルと”orders”テーブルの”user_id”列を使用してJOINを行っています。”USING”句を使うことで、明示的に”users.user_id = orders.user_id”と指定する必要がありません。

“USING”句を使用することで、結合する列名が同じであることが前提となります。また、”USING”句は内部結合(INNER JOIN)や左結合(LEFT JOIN)といったJOINの種類と併用することができます。

“USING”句は結合する列が同じ名前である場合にのみ使用できます。

列名が異なる場合や複数の列を結合する場合は、通常の”ON”句を使用する必要があります。

JOINまとめ

JOINは、複数のテーブルを関連付けて結果セットを取得するための方法です。

取得したい要件に合わせ、INNER JOIN, FULL JOIN, LEFT JOIN, LIGHT JOINを使い分けてご使用ください。また、列名が同じ場合はUSINGを使用するとクエリの視認性が向上できます。

SQL文法関連記事

また、そのほかSQL関連記事をこちらにまとめておりますのでご参考ください。
Coffee Tech Blog SQL関連記事

もしIT業界への転職でお困りでしたら、下記サービスのご活用をご検討ください!
私は転職の際にGeeklyを活用させて頂き、ご縁を頂くことができました。

Geekly転職ドラフト
IT・WEB・ソーシャルゲーム業界を専門とした転職支援サービスです。ギークリー独占の求人案件も扱っており、大手サービスに劣らないサービス力を誇ります。転職ドラフトは年収UP率94.3% / 平均年収UP額148.4万円と圧倒的な年収UP率を誇るイベント型のエンジニア向け転職サービスです。毎月1回開催され、IT/Web系企業を中心に、厳選された約240社からダイレクトスカウトを受け取ることができます。

参考になれば幸いです☕

コメント

タイトルとURLをコピーしました