0

我怎样才能把宏/脚本/自动的东西放在一起,让我可以对我的数据库进行以下更改:

如果第 1 列中的任何单元格是 X,则将第 2 列(在同一行中)的内容更改为 0。如果第 1 列中的单元格不是 X,则保留第 2 列的内容。

4

2 回答 2

1

这只是一个UPDATE带有WHERE子句的简单语句。运行一次以更新表中的所有行。

UPDATE yourtable SET column2 = 0 WHERE column1 = 'X'

如果您需要在更改为column2时自动更新为 0 ,请创建触发器。column1XBEFORE UPDATE

/* DELIMITER has been set to $$ in your client */
CREATE TRIGGER column1_is_X BEFORE UPDATE ON yourtable
FOR EACH ROW
BEGIN
  IF NEW.column1 = 'X' THEN
    SET NEW.column2 = 0;
  END IF;
END$$
/* Then you should set the DELIMITER back to ; */
于 2012-11-29T14:54:51.177 回答
0

您可以执行以下操作:

UPDATE table SET column2 = IF (column1 = 'X', 0, column2)
于 2012-11-29T14:57:46.610 回答