0

所以也许我的问题标题不是最相关的,但我不擅长 sql,我肯定需要学习它(所以提示一些书会非常有用)

无论如何,我得到了具有以下(重要)列的表:

user_id,username,revenue

和这样的记录:

1,john,39
2,mark,53
3,philipp,7
1,john,17
2,mark,3
2,mark,100

我需要获取收入最大的用户,所以我需要获取所有行,计算总收入并打印总收入最大的用户。

任何提示;)?

4

1 回答 1

3

您可以使用ORDER BYLIMIT

SELECT user_id, username, SUM(revenue) FROM table
GROUP BY user_id /* add ', username' ONLY if two different usernames with the same user_id is a possible case */
ORDER BY SUM(revenue) DESC
LIMIT 0,1

有了这个,您将计算每个用户的收入,您通过减少总数排序并只获得第一个,这样您就有最高的收入。

于 2013-01-29T11:05:15.827 回答