sql先排序在分组遇到的问题

有一张表,id,name,money想取出最高价格按用户分组

select * from (select * from permission order by money desc) p group by p.name

这是子查询结果

图片说明

最后分组的结果不是按照我排序的结果来分组的

这是整条sql结果

图片说明

我对这条sql理解是根据sql执行顺序得到子查询生成新的表之后,在新的表里进行分组,在排序,希望大神指点

4个回答

select * from (select * from order by money desc) group by name 在试下

weixin_43858415
大连吴彦祖 不好用啊
4 个月之前 回复

SELECT NAME ,MAX(money) FROM permission GROUP BY NAME ORDER BY MONEY DESC
这个意思??

select * from (select * from permission order by money desc) p group by p.name ORDER BY max(money) desc这样试下呢

select p.id as id,p.url as url,p.name as name,max(p.money) as money from permission p group by p.name

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!