打个比方来记录一下这个细节问题。
首先有个test表
想要的数据是:甲 status =0 的一条数据。
但如果先group by 再排序,默认机制永远是id=1的显示出来。
我就先写子查询再分组。还是不行。原来是sql语句的问题。
(错误语句)
select * from test where id in (select id from test order by `status` ASC) group by `name`
研究了一会儿发现好像怎样先排序后分组都不能改变呀。结果突然这样试出来了。。。。
(正确语句)
select * from (select * from test order by `status` ASC) t GROUP BY t.`name` order by `status` ASC