00x00 2019-04-16 11:53 采纳率: 0%
浏览 1169

需要统计出用户购买某种商品总价以及个数

Order 表和OrderDetail 表 需要按照商品分类;商品类型在detail中,总价格在order中

order 表

id  userid  factPrice 
1     22          30
2     33          10
3     33          40

order_detail表

Id    orderid       skuPrice        skuid   count
10      1               10           88        1
11      1               20           89        1
12      2               10           88        1
13      3               20           89        2           

我用的左链接
select o.userid ,sum(factPrice),sum(count) from order o left join order_detail od on o.id=od.orderid
group by o.userid ,od.skuid

  • 需要得到 用户, 总实际价钱,商品,购买总数
  • 但是得到的总价钱会由于左链接而大于实际价格,但是如果使用max()函数只取第一条,则count数量就会小于实际值。。。。
  • 写回答

2条回答 默认 最新

  • James_lsj 2019-04-16 12:17
    关注

    你这里的总价钱值得是什么???是单个id所用的总价格还是所有用户总价格的和???
    按照你的sql语句:
    select o.userid ,sum(factPrice),sum(count) from order o left join order_detail od on o.id=od.orderid group by o.userid ,od.skuid
    应该是总和,但是如果是总和的话,应该就这样写了

    评论

报告相同问题?

悬赏问题

  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型
  • ¥15 求学软件的前人们指明方向🥺
  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误