在 SQL 中,您可以使用 CASE WHEN 表达式与聚合函数(如 SUM、COUNT、AVG、MAX 和 MIN)结合使用
假设我们有一个名为 “orders” 的表格,其中包含以下列:order_id, customer_id, order_date 和 total_amount。现在,我们想要计算每个客户的平均订单金额,但只考虑订单金额大于 100 的情况。
以下是一个示例查询,展示了如何结合使用 CASE WHEN 和 AVG 聚合函数:
SELECT
customer_id,
AVG(CASE WHEN total_amount > 100 THEN total_amount ELSE NULL END) AS average_order_amount
FROM
orders
GROUP BY
customer_id;
在这个查询中,我们首先选择 “customer_id” 列。然后,我们使用 AVG 函数计算每个客户的平均订单金额。通过使用 CASE WHEN 表达式,我们可以确保只计算订单金额大于 100 的行。当 total_amount 大于 100 时,我们使用 total_amount 值;否则,我们使用 NULL(表示不计算此行)。最后,我们按 “customer_id” 对结果进行分组。
以上就是关于“如何结合聚合函数使用SQL Case When”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm