サブクエリとは
サブクエリとは、クエリの中に含まれる別のクエリのことです。サブクエリは通常、データを絞り込むために使用され、親クエリに対して追加のデータを提供します。
サブクエリの例
以下は、employees
テーブルから最高給与を持つ従業員の情報を取得する例です。
SELECT *
FROM employees
WHERE salary = (SELECT MAX(salary) FROM employees);
この例では、サブクエリ (SELECT MAX(salary) FROM employees)
が、最高給与を取得します。
エイリアスとは
エイリアスは、テーブルやカラムに一時的な名前(別名)を付けるために使用されます。エイリアスを使うことで、クエリを簡潔にし、読みやすくすることができます。
テーブルエイリアスの例
以下は、employees
テーブルにエイリアスを付ける例です。
SELECT e.first_name, e.last_name, e.salary
FROM employees AS e;
ここで、employees
テーブルにe
というエイリアスを付けています。
カラムエイリアスの例
以下は、salary
カラムにエイリアスを付ける例です。
SELECT first_name, last_name, salary AS employee_salary
FROM employees;
ここで、salary
カラムにemployee_salary
というエイリアスを付けています。
サブクエリとエイリアスの組み合わせ
サブクエリとエイリアスを組み合わせることで、さらに複雑なクエリを簡潔に記述することができます。
例: サブクエリとエイリアスの組み合わせ
以下は、サブクエリを使って特定の条件を満たすデータをフィルタリングし、その結果にエイリアスを付けて使用する例です。
SELECT
*,
4 * (carbohydrates + protein) + 9 * fat AS total_calories
FROM (
SELECT
food_name, carbohydrates, protein, fat
FROM foods
WHERE protein >= 40
AND carbohydrates < 20
AND fat < 10
) AS filtered_foods;
この例では、サブクエリがfoods
テーブルから特定の条件を満たす行を選択し、結果にfiltered_foods
というエイリアスを付けています。外側のクエリは、このエイリアスを使用して、総カロリーを計算しています。