计算 mysql 中两个范围之间的值

count values between two ranges in mysql

我有一个table像这样的东西

fromrank torank prize poolid
1 1 4500 72
2 4 1500 72
5 6 250 72

现在我想使用mysql查询来计算奖金总和 例如,第一名获得 4500,第二名到第四名每个人将获得 1500,第五和第六名用户每个获得 250,因此根据 poolid,奖品总和应为 9500,但是当我尝试仅对奖品求和时,我得到 6250,但是实际金额为9500

您只需将奖金乘以排名差 + 1

select sum(prize * (torank - fromrank + 1))
  from test_table;

dbfiddle