我的游戏中有一张枪械表,它有3个字段:
Name dmg timer
------------------------
Pistol 5 30
Shotgun 10 45
Sniper 16 60
计时器表示可以以秒为单位拍摄的频率。除此之外还有很多行,但是......
我想按照射速的顺序拉动它们,每分钟都会造成最大的伤害。所以手枪每分钟会造成10点伤害,霰弹枪12.5,狙击手16。
我如何将其作为查询?
SELECT * FROM firearms ORDER BY ?
这可能是一些基本的数学,但我没有想清楚。
答案 0 :(得分:1)
你只需要计算一个加权伤害,我认为这样的事情可以做到:
SELECT * FROM firearms ORDER BY (dmg * (60/timer)) desc
答案 1 :(得分:0)
尝试:
SELECT * FROM firearms ORDER BY dmg/timer desc
- 首先获得最大的破坏力。
答案 2 :(得分:0)
SELECT Name,
dmg,
timer,
(dmg * (60 / timer)) as
FROM firearms
ORDER BY xx desc
答案 3 :(得分:0)
SELECT
dmg*60.0/timer AS DamagePerMinute,
*
FROM firearms
ORDER BY 1 DESC
答案 4 :(得分:0)
SELECT name, (dmg/timer) FROM Weapons ORDER BY (dmg/timer)
通过DPS(每秒伤害)返回数据库中的所有武器,有两列:名称和DPS。