You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL需求:计算指定行Fee列加权总和(Adult乘200/Child乘50)

完善SQL实现会员费分类求和

没问题,我来帮你把这个SQL语句补全。你的需求是针对Hillcrest俱乐部的不同会员类型,给Adult的费用乘以200、Child的费用乘以50,最后算出对应总费用对吧?

方案1:计算所有会员的总费用(不分类型)

如果你需要的是把Adult和Child计算后的费用加起来的总金额,可以用CASE语句区分类型应用不同乘数,再用SUM()汇总:

SELECT SUM(CASE 
             WHEN Type = 'Adult' THEN Fee * 200
             WHEN Type = 'Child' THEN Fee * 50
             ELSE 0  -- 兜底处理其他未定义的类型,避免NULL干扰求和结果
           END) AS TotalMembershipFee
FROM fees 
WHERE Clubname = 'hillcrest';

这个语句会遍历符合条件的所有记录,根据Type字段自动匹配对应的计算规则,最后把所有结果加总得到总会员费。

方案2:按类型分别显示计算后的费用

如果你需要同时看到Adult和Child各自的总费用,可以保留GROUP BY Type,调整后的SQL如下:

SELECT 
  Type,
  SUM(CASE 
        WHEN Type = 'Adult' THEN Fee * 200
        WHEN Type = 'Child' THEN Fee * 50
        ELSE 0 
      END) AS MembershipFee
FROM fees 
WHERE Clubname = 'hillcrest'
GROUP BY Type;

执行后会返回两行数据,分别显示Adult和Child类型的总费用。

内容的提问来源于stack exchange,提问作者T.Ryan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 08:28:33