SELECT t.*
FROM (
SELECT ROW_NUMBER() OVER(PARTITION BY group_column ORDER BY order_column DESC) rn, table.*
FROM table
) t
WHERE t.rn <= 3;
oracle或mysql获取分组后每组的前N条数据
最新推荐文章于 2024-07-25 15:06:47 发布
SELECT t.*
FROM (
SELECT ROW_NUMBER() OVER(PARTITION BY group_column ORDER BY order_column DESC) rn, table.*
FROM table
) t
WHERE t.rn <= 3;