MySQL更新字段,其中值为x

时间:2017-09-07 09:58:37

标签: mysql sql-update

我有一张名为' ids'如下:

ID | id1 | id2 | id3 
---|-----|-----|----- 
25-|--2--|--3--|--4--
---|-----|-----|-----
15-|--7--|--22-|--1-- 
---|-----|-----|-----

现在我想将这些字段更改为null,其中包含值3 并且ID = 25。 通常您使用术语:

UPDATE ids SET columnName = value WHERE ID=25.

但在这种情况下,我无法确定列名,我必须借助该字段中的值找到它。

1 个答案:

答案 0 :(得分:2)

您可以使用此UPDATE声明:

UPDATE ids
SET 
   id1 = IF(id1=3, NULL, id1),
   id2 = IF(id2=3, NULL, id2),
   id3 = IF(id3=3, NULL, id3)
WHERE 3 IN (id1, id2, id3) AND ID = 25