サブクエリ
サブクエリはクエリの中に入る別のクエリです。集計結果を条件に使うときに便利です。 SELECTの中のSELECT
基本文法
SELECT column_name
FROM table_name
WHERE column_name >= (SELECT AVG(column_name) FROM table_name);例題
平均給与以上の社員
サブクエリで平均給与を求め、その値を比較条件に使います。
SELECT name, salary
FROM employees
WHERE salary >= (SELECT AVG(salary) FROM employees);最も高い商品
MAX()で求めた最高価格と一致する商品を取得します。
SELECT * FROM products
WHERE price = (SELECT MAX(price) FROM products);知っておくと便利なこと
- サブクエリは括弧の中に書きます。
- 1つの値を返す場合は、=、>、<などで比較できます。
- 複数の値を返す場合はINやEXISTSを使います。SQLiteではANY/ALLによる比較は使えません。
練習問題
- 平均給与以上の社員 · 上級 · サブクエリ