根据一楼大佬的题解,理思路,弄出来的。 # 第一步,统计每个用户总积分 # if(type='add',grade_num,-1*grade_num) # IF(expr1,expr2,expr3)expr1 的值为 TRUE,则返回值为 expr2 expr1 的值为FALSE,则返回值为 expr3 select user_id,sum(if(type='add',grade_num,-1*grade_num)) as grade from grade_info group by user_id #第二步,借助窗口函数对用户按照积分进行排序 # #rank() 相同的并列排序 # over...