我有一个 20k 行的表; 在第一列中,我只有 32 个不同的值(每个月都可以更改); 如何限制此返回以获取 32 个值中每个值的前 10 行,就像我的 SELECT 中的“子限制”一样?
PS:以防我的查询中有 320 行
最佳答案
使用 Row_Number
可以得到你想要的结果:
SELECT * FROM (
SELECT FirstCol, SecondCol, ROW_NUMBER() OVER (PARTITION BY FirstCol ORDER BY SecondCol) As RowNum FROM YourTable
) t
WHERE RowNum <= 10;
关于mysql - 通过列中的不同值限制返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42985556/