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后,之后的不再执行了
温馨提示:答案为网友推荐,仅供参考