SQLで複数テーブルのJOINと集約関数をマスターする

この記事では、SQLにおいて複数テーブルのJOINと集約関数を如何に効果的に活用するかを解説します。具体的なテーブルのデータ例とそれを操作するSQLクエリのコード例を用いて説明します。

目次

はじめに

SQL(Structured Query Language)は、データベース管理のための言語です。この記事では、SQLでの複数テーブルのJOINと集約関数の使い方を学びます。これらはデータ分析やレポート作成、アプリケーションのバックエンド開発などで頻繁に使用されます。

テーブルの構造

まずは、この記事で使用するテーブルの構造を理解しましょう。

employees(社員テーブル)orders(注文テーブル)
employee_id, name, departmentorder_id, employee_id, total_price
テーブル構造

JOINについて

JOINとは、2つ以上のテーブルを結合する操作です。

INNER JOIN

INNER JOINは、結合条件に一致するレコードだけを返します。

SELECT e.name, o.total_price
FROM employees e
INNER JOIN orders o ON e.employee_id = o.employee_id;

LEFT JOIN

LEFT JOINは、左テーブルの全レコードと右テーブルの一致するレコードを返します。

SELECT e.name, o.total_price
FROM employees e
LEFT JOIN orders o ON e.employee_id = o.employee_id;

集約関数について

集約関数は、複数の行の値を一つの値にまとめる関数です。

SUM関数

SUM関数は、特定の列の値の合計を求めます。

SELECT SUM(total_price) 
FROM orders;

COUNT関数

COUNT関数は、行数をカウントします。

SELECT COUNT(*) 
FROM orders;

JOINと集約関数の併用

複数テーブルのJOINと集約関数を併用することで、より高度なデータ操作が可能です。

SELECT e.department, COUNT(*), SUM(o.total_price)
FROM employees e
INNER JOIN orders o ON e.employee_id = o.employee_id
GROUP BY e.department;

まとめ

SQLでの複数テーブルのJOINと集約関数は、データ分析やレポート作成において非常に有用です。独自のニーズに応じて、これらの機能をうまく組み合わせることで、より効率的なデータ操作が可能となります。

コメント

コメントする

目次