【发布时间】:2013-12-30 01:25:26
【问题描述】:
这是我的桌子:
我正在尝试列出收入最高的用户列表(TOP 列表)。 我使用的是 SUM(earnings) 和 GROUP BY username,但我也想SUM upline_earnings。
上表中user1是test的上线,所以test的所有收入都应该算作user1 赚钱。
这是我的代码:
SELECT COUNT (a.id) as total,
(SUM(CASE WHEN b.upline=a.username THEN b.up_earnings ELSE 0 END)+SUM(a.earnings)) as tot_earnings,
SUM(a.dls) as tot_dls,
a.username
FROM logs a left join logs b ON a.username=b.upline
GROUP BY a.username ORDER BY tot_earnings DESC
但它不起作用!看起来表 A 中的结果会重复:http://i.stack.imgur.com/Mefht.png
欢迎任何帮助!
谢谢!
【问题讨论】:
-
图片?这不是我们滚动的方式。
标签: mysql sql join group-by sum