MySQL分组查询后要每组的前N条数据怎么写SQL语句
时间: 2024-02-03 11:11:28 浏览: 184
可以使用子查询和LIMIT关键字来实现分组后每组的前N条数据查询,例如:
```
SELECT *
FROM (
SELECT *
FROM table_name
ORDER BY group_column, order_column
) AS t
GROUP BY group_column
LIMIT N
```
其中,table_name是要查询的表名,group_column是分组列名,order_column是排序列名,N为每组的前N条数据。
这个SQL语句将先按照group_column和order_column进行排序,然后再进行分组,并取每组的前N条数据。注意,由于MySQL的GROUP BY语句会对结果进行合并,所以在子查询中需要先进行排序,以保证每组的前N条数据是正确的。
阅读全文