MySQL下分组group出来显示每组的第一行多种方法实现

2022-06-28 463点热度 0人点赞 0条评论

需求说明

MySQL下对数据表数据做分组,并显示每一组的第一行(具体怎么算每组的第一行数据,可以根据order by某一字段)

SQL实现

思路:可以先用 SELECT min(id) FROM table1 GROUP BY column1 查出ID列表然后作为子查询条件再去select原表,具体SQL如下(这个办法需要一个主键ID(primary_key)或唯一键unique_key):

SELECT column1, column2 FROM table1 
WHERE id IN (
    SELECT min(id) FROM table1 GROUP BY column1
);

另一种办法如下(不需要主键或者unique key):

select column1, min(coumn2)
  from table1
 group by column1

 

 

admin

这个人很懒,什么都没留下

文章评论

您需要 登录 之后才可以评论