php mysql group分组后怎么排序?
select*from(select*fromcom_newadminwheregroups='Admin'orderbydatedesc)ASgttGROUPBYgtt...
select * from (select * from com_newadmin where groups='Admin' order by date desc) AS gtt GROUP BY gtt.name ORDER BY gtt.date DESC在网上找了好多解决方法都无法排序,都是按照默认的排序输出,很无奈
展开
展开全部
在group时使用*查询有些不合适的, 建议仔细研究group的作用.
一般使用group时, select 字段列表里,一定要包含group的字段, 其余的字段也必须和group字段一一对应的, 不然查询结果会有问题. 然后再根据字段列表里的某些字段进行排序就没有问题了.
-- group_name, group_id, group_add_time 个字段分别为分类名称,分类id和分类添加的时间, 它们是一一对应的. 如此查询是正确的
select group_name, group_id, group_add_time from table_name group by group_id order by group_add_time asc;
-- 查询错误. 一个分组(group_id)里可能有多个uid, 非一一对应
select uid, group_name, group_id, group_add_time from table_name group by group_id order by group_add_time asc;
追问
没用呀,执行group by后,之后的不再执行了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |