sql 分组后,组内排序, 分片

2018-03-18  本文已影响0人  樊海鹏

查询返回每个id的前5

SELECT
yourtable.*
FROM
yourtable INNER JOIN (
SELECT
id,
GROUP_CONCAT(year ORDER BY rate DESC) grouped_year
FROM
yourtable
GROUP BY id) group_max
ON yourtable.id = group_max.id
AND FIND_IN_SET(year, grouped_year) BETWEEN 1 AND 5
ORDER BY
yourtable.id, yourtable.year DESC;

上一篇 下一篇

猜你喜欢

热点阅读