将所有值设置为零,除了单行中的一个

时间:2014-03-26 11:34:33

标签: mysql stored-procedures

我有两个表(两个都具有相同的结构),每个表有11个字段(ID和10个以上),我需要将特定ID的所有值更新为零。显然只有身份证。

+-----+------+------+------+-...-+-------+
| ID  | val1 | val2 | val3 |     | val10 |
+-----+------+------+------+-...-+-------+
| 45  | 25   |  87  | 310  |     |   12  | 
+-----+------+------+----- +-...-+-------+

除了写所有等于零的字段外,是否存在更简单的方法?

(注意:我不知道是否重要,但我正在使用存储过程。)

非常感谢。

1 个答案:

答案 0 :(得分:0)

根据mySql语法,您应该在更新查询中提及列名称(根据documentation)。

但是,如果您按照与表格定义相同的顺序指定值,则可以使用 (不推荐) ;

REPLACE INTO table VALUES(45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);

但请注意,这将替换整行,因此您必须指定所需的所有值,包括ID!