我有一个看起来像这样的表:
Quote Super Factor
29 63 [83.79]
38 61 [81.13]
79 65 [86.45]
47 40 [80]
81 25 [50]
82 35 [70]
我想把列'超级'乘以1.33 IF 'Quote'是29,38,79。如果字段'Quote'是47,81,82然后乘以'超级'由2。
引用是“BigInt(10)”,“超级”和“因素”都有一种“双重”。表的名称是“Quote_IDX”。
注意:完成此计算后,“[]”中的数字应该是我应该得到的。你可能会说我对MySQL很新,所以我需要一些帮助。
提前致谢。
答案 0 :(得分:2)
您可以使用以下使用CASE
语句的内容。 SELECT
会显示数据结果:
select quote, super,
case when quote in (29, 38, 79)
then super * 1.33
when quote in (47, 81, 82)
then super * 2.0
else 0
end factor
from Quote_IDX
见SQL Fiddle with demo。然后,如果您想要UPDATE
列的factor
:
update Quote_IDX
set factor = (case when quote in (29, 38, 79)
then super * 1.33
when quote in (47, 81, 82)
then super * 2.0
else 0 end)