MySQL将枚举值转换为整数值



我有一个表,其中包括一个ENUM字段值'B', 'N', 'F'和'V'。我想给每一个字母分配一个权重:

B: -2
N: -1
F: 1
V: 2

这些权重应该出现在select语句的列中。最后,我想把这些值加在一起。这可能吗?

目标是在django中做到这一点,但使用MySQL也可以。

使用CASE表达式:

select sum(case enum_field
                when 'B' then -2
                when 'N' then -1
                when 'F' then 1
                when 'V' then 2   
           end) as total_sum
from your_table
select sum(case when enum_field = 'B' then -2
                when enum_field = 'N' then -1
                when enum_field = 'F' then 1
                when enum_field = 'V' then 2   
           end) as total_sum
from your_table

相关内容

  • 没有找到相关文章

最新更新