SELECT
tt.user_id,
user.name,
tt.sum_num
FROM
(
SELECT
* ,
DENSE_RANK() OVER( ORDER BY sum_num DESC ) AS rk
FROM
(
SELECT
user_id,
SUM(grade_num) AS sum_num
FROM
grade_info
GROUP BY
user_id
) AS tmp
) AS tt
LEFT OUTER JOIN
user
ON
tt.user_id = user.id
WHERE rk <=1
;

京公网安备 11010502036488号