-
サブクエリを使用して条件を絞る:
SELECT * FROM employees WHERE department_id IN (SELECT department_id FROM departments WHERE location = 'Tokyo');
上記の例では、
departments
テーブルからlocation
が'Tokyo'である部署のdepartment_id
を取得し、それを使用してemployees
テーブルから条件に一致する従業員を取得しています。 -
サブクエリを使用して集計関数を組み合わせる:
SELECT department_id, AVG(salary) FROM employees WHERE salary > (SELECT AVG(salary) FROM employees) GROUP BY department_id;
上記の例では、
employees
テーブル内の平均給与よりも高い給与をもつ従業員を抽出し、部署ごとの平均給与を計算しています。 -
サブクエリを使用して別のテーブルからデータを取得する:
SELECT employee_name, department_name FROM employees WHERE department_id IN (SELECT department_id FROM departments WHERE location = 'Tokyo');
上記の例では、
departments
テーブルからlocation
が'Tokyo'である部署のdepartment_id
を取得し、それを使用してemployees
テーブルと結合して従業員名と部署名の組み合わせを取得しています。
これらはサブクエリの一部の例ですが、様々な場面で使用することができます。サブクエリを使用すると、データベースからより複雑な情報を取得したり、条件を厳密に制御したりすることができます。