select t.order_add_user,t.s,t.r,t.c,   case when t.r>3 and t.r<=10 then 50*t.c           when t.r<=3 then 50*t.c+1000  --人名,钱数,排名,订单数,奖金 from( select order_add_user, sum(price*quantity) as s, dense_rank()over(partition by order_add_user, order by sum(price*quantity) desc) as r, count(id) as c from order  where left(oat,7)=left(curdate,7)  group by order_add_user) as t  --本月的 销售员 挣的钱数 排名 单数 where r<=10 --前10名 --没在DB里填数据,有试过的朋友哪里报错还请指正