MySQL8.0以后的功能,可以很方便的将结果按小分组进行排序,
例如从下面链接粘过来的一个示例,可以取出每个产品线入库数前三的数据:
WITH inventory
AS (SELECT
productLine,
productName,
quantityInStock,
ROW_NUMBER() OVER (
PARTITION BY productLine
ORDER BY quantityInStock DESC) row_num
FROM
products
)
SELECT
productLine,
productName,
quantityInStock
FROM
inventory
WHERE
row_num <= 3;