by 和 order by 一起使用时,会先使用group by 分组,并取出分组后的第一条数据,所以后面的order by 排序时根据取出来的第一条数据来排序的,但是第一条数据不一定是分组里面的最大数据...方法一:
既然这样我们可以先排序,在分组,使用子查询。...SELECT
r.id,
r.uid,
r.money,
r.datatime
FROM (SELECT
id,
uid,
money,
datatime...,则可以使用 max()
SELECT id, uid, money, datatime, MAX(money) FROM reward GROUP BY uid ORDER BY MAX(money)...如果需要取得整条记录,则不能使用这种方法,可以使用子查询。