MYsql更新案例不起作用

时间:2018-04-04 14:58:37

标签: mysql

我有一个MYSQL表。 当用户超过20岁时,他应该得到5分(设置字段值= 5)。 当用户不到20岁时,他应该得到10分,其中fieldvalue = 5。

不是将字段值设置为5和10,而是仅在第一次将值设置为空白,而不再使用。我做错了什么?

UPDATE `TABLE` SET `FieldValue` = CASE
 WHEN `FieldName` = 'age' and `FieldValue` = 'over 20 years' THEN  '5'
 when `FieldName` = 'age' and `FieldValue` = 'less than 20 years' THEN '10'
    END
WHERE `FieldName` = 'pointsforage'

1 个答案:

答案 0 :(得分:0)

学习做一些调试。将您的UPDATE变为SELECT以检查值。

SELECT *
    , ( 
        CASE
            WHEN `FieldName` = 'age' and `FieldValue` = 'over 20 years' THEN  '5'
            when `FieldName` = 'age' and `FieldValue` = 'less than 20 years' THEN '10'
        END
    ) test
FROM TableName
WHERE `FieldName` = 'pointsforage'

从结果中您可以看到您的查询有什么问题。