1、分组获取每组最后一条记录
mysql查询出所有,不需要groupby 然后用array_column($list,null,'要分组的字段')
2、分组获取每组第一条记录
直接sql完成 select * from 表明 GROUP BY 要分组的字段
为什么做这个记录,是因为去百度搜索查到的全部是内嵌查询。比如:
SELECT * FROM(SELECT * FROM test ORDER BY create_time DESC LIMIT 10000) a GROUP BY address
SELECT t.* FROM (SELECT address,max(create_time) as create_time FROM test GROUP BY address) a LEFT JOIN test t ON t.address=a.address and t.create_time=a.create_time
效率我没有对比过,只是看到这个sql就感觉超级复杂