2013-05-08 83 views
-2

我有一个从旧系统迁移的表。该表包含一些不再有效的值。我需要能够将无效数据更改为有效数据。该表只有2列 - id和who,都是int值。Mysql命令来解析

id列是存储作业的作业ID。 谁是分配给工作的人。 我有一个谁id = 10在新系统中无效。所以,我需要的10每个实例更改为16

Table CC 

id | who 

mysql> select * from cc; 

1  | 2 

1  | 3 

2  | 1 

2  | 10 

mysql> select * from CC where id = 2; 

2  | 1 

2 | 10 

mysql> select * from CC where who = 10; 

2 | 10 

有没有办法做到上面的命令,并在同一时间改变的价值呢?

mysql> update CC set who = '16' where who = 10; 

这项工作?

+1

尝试它,它会工作,在这种情况下,单引号是可选的,因为数据类型是整数。 http://www.sqlfiddle.com/#!2/f4d4c/1 – 2013-05-08 17:39:58

回答

0
update CC set who = 16 where who = 10; 

我删除了16位的引号,这是一个int。

+0

即使你没有删除,它仍然会工作。 OP给出的查询没有任何问题。只是他没有试图执行它。 – 2013-05-08 17:44:53