我有一个查询:
SELECT COUNT(*) as votes, a.member_id FROM ballots a WHERE ballot_id = 1 GROUP BY a.member_id
产生如下内容:
votes member_id 1 paul 5 mike 3 noynoy 10 andy 2 noel
我希望能够获得“安迪”这一行,因为他获得了最高的“票数”。
如何更改查询以执行此操作?
在此先感谢您的帮助 :)
您可以使用ORDER BY,然后DESC按降序从最高到最低投票对其进行排序。然后LIMIT结果仅排到一行(即最高)。
ORDER BY
DESC
LIMIT
SELECT COUNT(*) as votes, a.member_id FROM ballots a WHERE ballot_id = 1 GROUP BY a.member_id ORDER BY votes DESC LIMIT 1