在聚合函数中使用 SQL CASE WHEN 可以在对数据进行聚合计算时根据条件进行分组或筛选数据。例如,可以根据某个条件来计算不同分组的总数、平均数等。
以下是一个示例,在一个订单表中计算不同类别商品的平均价格:
SELECT
CASE
WHEN category = 'Electronics' THEN 'Electronics'
WHEN category = 'Clothing' THEN 'Clothing'
ELSE 'Other'
END AS category_group,
AVG(price) AS avg_price
FROM orders
GROUP BY
CASE
WHEN category = 'Electronics' THEN 'Electronics'
WHEN category = 'Clothing' THEN 'Clothing'
ELSE 'Other'
END
在上面的示例中,我们使用 CASE WHEN 来根据商品类别将数据分组为 Electronics、Clothing 和 Other,并计算每个组的平均价格。最终的结果会显示每个类别的平均价格。