group by分组查询后排序
如:分组查询
SELECT s.name name,COUNT(s.id) value FROM t_setmeal s,t_order o WHERE s.id=o.setmeal_id GROUP BY s.name
现在想实现 分组查询后,按照value值由高到低排序。
实现:通过子查询分组查询出一个派生表,再对该表排序查询
1、上面查询出来的就是一个新的表,一个属性为 name, value 的表。(注意:每个派生表都必须有自己的别名 )
2、以上面的表为基础 排序查询
select b.name,b.value
from
(SELECT s.name name,COUNT(s.id) value FROM t_setmeal s,t_order o WHERE s.id=o.setmeal_id GROUP BY s.name)
as b
order by b.value desc
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)