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

SQL查询:如何将商品累计销量与对应商品单价相乘计算总金额

SQL查询实现方案

你可以通过关联商品表tblartikel和订单表tblbestallning,在聚合计算后直接相乘得到对应商品的总销售金额,两种常用实现方式如下:

方式1:单次关联聚合查询(更推荐)

SELECT 
    a.artikelid,
    SUM(b.amount) AS AmountSold,
    a.price,
    SUM(b.amount) * a.price AS TotalSalesAmount
FROM tblbestallning b
INNER JOIN tblartikel a 
    ON b.artikelid = a.artikelid
GROUP BY a.artikelid, a.price

该写法直接在一次查询中完成表关联、销量聚合、金额计算,执行效率更高。因为artikelid是tblartikel的主键,单个商品对应唯一单价,分组时加入price字段不会影响聚合结果,符合所有主流数据库的分组语法规范。

方式2:复用你已有的聚合查询作为子查询

如果你希望保留已经写好的销量统计逻辑,可以将其作为子查询和商品表关联计算:

SELECT 
    s.artikelid,
    s.AmountSold,
    a.price,
    s.AmountSold * a.price AS TotalSalesAmount
FROM (
    SELECT artikelid, SUM(amount) AS AmountSold 
    FROM tblbestallning 
    GROUP BY artikelid
) s
INNER JOIN tblartikel a 
    ON s.artikelid = a.artikelid

注意事项

  • 如果需要统计从未产生过销量的商品,将上述语句中的INNER JOIN替换为LEFT JOIN即可,同时可以使用COALESCE(AmountSold, 0)把空销量值转为0,避免金额计算结果为NULL。
  • 如果你需要统计全店所有商品的总销售金额,只需在外层套一层SUM(TotalSalesAmount)的聚合即可。

内容的提问来源于stack exchange,提问作者Hugo Polstam

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 20:06:05