为了账号安全,请及时绑定邮箱和手机立即绑定

请教大家一个三级分销业绩统计的MySQL查询语句问题

请教大家一个三级分销业绩统计的MySQL查询语句问题

如上图所示, 用到的字段 有 uid(用户id)  pid(直接推荐人ID)  ppid(间接推荐人ID)  fen(销售份数)  addtime(购买的时间)要求为统计所有 pid ppid uid 的销售份数总和按时间段来排序.说明 三级分销的业绩是累加的. 也就是要把这个表中所有 pid,ppid,uid为同一个id值的时候统计出销售份数之和,并排序.想问下这个能实现么. (目前仅能得到单个字段的统计结果)$time1 $time2 是起止时间"SELECT uid,SUM(fen) as fen FROM yh_sales WHERE addtime BETWEEN $time1 AND $time2  GROUP BY 1  ORDER BY 2 DESC LIMIT 0 , 5"
查看完整描述

1 回答

已采纳
?
是王小二呀

TA贡献88条经验 获得超19个赞

select id,sum(counts) as total from (
select pid as id,sum(fen) as counts from yh_sales  group by pid 
union all
select ppid as id,sum(fen) as counts from  yh_sales  group by ppid
union all
select uid as id,sum(fen)as counts from  yh_sales  group by uid) tab 
group by id

没搞明白你这个按照时间排序,是按照谁的时间? pid?uid?ppid?,自己看着join一下再选时间【】排一下序吧。



查看完整回答
1 反对 回复 2017-09-28
  • 愿夜幕永不开启
    愿夜幕永不开启
    非常感谢,我这个是根据时间来排的序.数据库里边有addtime.这个时间做一个限制 就行了,非常感谢您的思路.
  • 1 回答
  • 1 关注
  • 3831 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信