我有一个查询返回给定员工的工资成本
SELECT totalhours * staffbaserate AS TotalCost FROM newrotaRaw WHERE staffref = @staffref
但是如果返回值> 105,我需要做一些额外的数学运算.我需要做的数学运算是,如果值<105,则返回原值,但是如果值大于105,那么我需要做值*1.128.
例如:
约翰史密斯的成本是90,因此查询应该返回90
David Smith的成本为140因此查询应返回157.92
我确定有一些方法可以使用replace来让它做我想要的但是我只使用了替换完全匹配,在这种情况下,替换是以值为条件的.
任何帮助将非常感激!
尝试这样的事情.
SELECT TotalCost = CASE WHEN (totalhours * staffbaserate) < 105 THEN (totalhours * staffbaserate) ELSE (totalhours * staffbaserate) * 1.128 END FROM newrotaRaw WHERE staffref = @staffref