問題一覧に戻る
上級高度な演算子
問題69: WITH句(CTE) - 共通テーブル式
WITH句を使用して一時的な名前付き結果セット(CTE: Common Table Expression)を定義する方法を学習します。複雑なクエリを読みやすく整理し、再利用可能な中間結果を作成できます。
-- 売れ筋商品を定義
top_products AS (
-- 100個以上売れた商品
SELECT product_id, SUM(quantity) as total_sold
FROM sales
GROUP BY product_id
HAVING SUM(quantity) > 100
)
-- 定義した売れ筋商品を使用
SELECT p.name, t.total_sold
FROM products p
JOIN top_products t ON p.id = t.product_id;