使用MYSQL两次更新相同的标志

时间:2013-04-30 09:31:34

标签: mysql

我有一个名为chart的表,其中有两列,名为UPC_REPORT_IDUPC_FLAG 我正在尝试准备查询以更新UPC_FLAG=1 UPC_REPORT_ID=1,同时我想更新UPC_FLAG=0 UPC_REPORT_ID !=2 请给我建议

4 个答案:

答案 0 :(得分:1)

UPDATE chart SET UPC_FLAG = (CASE WHEN UPC_REPORT_ID=1 THEN 1 ELSE CASE WHEN UPC_REPORT_ID !=2 THEN 0 END END)

答案 1 :(得分:0)

UPDATE chart
SET UPC_FLAG = CASE UPC_REPORT_ID
                    WHEN 1 THEN 1
                    WHEN 2 then UPC_FLAG
                    ELSE 0
               END

答案 2 :(得分:0)

使用WHEN

UPDATE ...设置UPC_FLAG =当UPC_REPORT = 1时的情况那么当UPC_REPORT_ID<>时2那么0结束......

- DMG

答案 3 :(得分:0)

与IF AS Barmar的回答相同

UPDATE chart
SET UPC_FLAG = IF(UPC_REPORT_ID = 1,1,IF(UPC_REPORT_ID <> 2,2,0))