有没有人可以告诉我正确的mysql语法来完成以下操作:
使用3个值中的1个更新表中的列:
如果col_A =4,将col_Z设置为col_A如果col_B =4,将col_Z设置为col_B,否则将col_Z设置为NULL (或保留原样,因为col_Z已初始化为NULL)
这就是我所拥有的:
Update my_table
SET col_Z = IF(col_A = 4, col_A, IF(col_B = 4, col_B, NULL))
WHERE id = "001"这是正确的吗?
发布于 2011-05-02 05:08:57
是的,看起来是正确的。
不过,下面的代码会更简单。
UPDATE my_table
SET col_Z = IF(col_A = 4 OR col_B = 4, 4, NULL)
WHERE id = "001"https://stackoverflow.com/questions/5851259
复制相似问题