在MYSQL中的CASE语句中一次搜索多个字段值的条件

时间:2011-11-10 06:05:29

标签: mysql

UPDATE `Table1` SET `col3` = 
CASE `col1`
WHEN 'ABC' THEN '2'
WHEN 'BCD' THEN '3'
ELSE '0'
END 

在此,我是否可以为col1和col2设置条件col3的值,如果我有

      col1 = 'ABC' AND col2 = '123'

然后我想设置

    col3 = 2 and col1 = 'ABC' AND col2 = '124' then set col3 = '4'

以及如何一次设置多个列值?假设我有col4,那么如何根据col1和col2值设置col3和col4值?

1 个答案:

答案 0 :(得分:1)

UPDATE Table1 SET col3 = 
CASE 
WHEN col1 = 'ABC' AND col2 = '123'
THEN '2'
ELSE '0'
END
,
col4 = 
WHEN col1 = 'ABC' AND col2 = '124'
THEN 'x'
ELSE '0'
END

在when子句中更新多个列和多个条件。