MySQLで複数のテーブルからデータを結合する方法

MySQLデータベースでは、複数のテーブルからデータを結合することがよくあります。これは、データを関連付けたり、関連する情報を1つのクエリで取得するために役立ちます。以下に、異なるテーブルからデータを結合するためのいくつかの例を示します。

INNER JOINを使用した基本的な結合

SELECT orders.order_id, customers.customer_name
FROM orders
INNER JOIN customers ON orders.customer_id = customers.customer_id;

このクエリでは、ordersテーブルとcustomersテーブルをcustomer_idカラムで結合しています。INNER JOINは、結合条件に一致する行だけを返します。

LEFT JOINを使用した結合(NULL値の取り扱い)

SELECT customers.customer_name, orders.order_id
FROM customers
LEFT JOIN orders ON customers.customer_id = orders.customer_id;

LEFT JOINは、LEFTテーブル(ここではcustomers)の全ての行を返し、RIGHTテーブル(ここではorders)の対応する行がない場合はNULL値を表示します。

WHERE句を使用した結合条件の指定

SELECT employees.employee_name, departments.department_name
FROM employees
INNER JOIN departments ON employees.department_id = departments.department_id
WHERE employees.salary > 50000;

この例では、employeesテーブルとdepartmentsテーブルをdepartment_idで結合し、給与が50000以上の従業員のみを抽出しています。

これらの例を参考にして、異なるテーブルを結合する際に使える基本的なMySQLクエリを理解しましょう。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です