在MySQL中更新列

在MySQL中更新列,mysql,insert-update,Mysql,Insert Update,我有一个表table1,有三列和一组行: [key_col|col_a|col_b] 我想用一组值更新列a(即保持列b不变),如下所示: INSERT INTO table1 AS t1 (key_col, col_a) VALUES ("k1", "foo"), ("k2", "bar"); 但它不起作用,我该怎么做?您必须使用更新而不是插入: 例如: UPDATE table1 SET col_a='k1', col_b='foo' WHERE key_col='1'; UPDA

我有一个表
table1
,有三列和一组行:

[key_col|col_a|col_b]
我想用一组值更新列a(即保持
列b
不变),如下所示:

INSERT INTO table1 AS t1 (key_col, col_a) VALUES ("k1", "foo"), ("k2", "bar");


但它不起作用,我该怎么做?

您必须使用更新而不是插入:

例如:

UPDATE table1 SET col_a='k1', col_b='foo' WHERE key_col='1';
UPDATE table1 SET col_a='k2', col_b='bar' WHERE key_col='2';

如果要更新数据,应使用
update
命令,而不是
INSERT

UPDATE table1 SET col_a = 'newvalue'

如果只想更新部分行,请添加
WHERE
条件。

如果要填充所有列:

update 'column' set 'info' where keyID!=0;

这是我为批量更新所做的:

UPDATE tableName SET isDeleted = 1 where columnName in ('430903GW4j683537882','430903GW4j667075431','430903GW4j658444015')

你是说我需要为我要更新的每一行编写一个更新查询?阅读本文了解多行更新:链接
使用不同的值更新多行,单个SQL查询
被破坏。请修复或删除。您可以从客户端应用程序中使用批处理。请给出一个在同一查询中更新多行的示例。这将更新所有行。使用where将此限制为更少的行。更新我要查找的答案。请选择此问题的可接受答案。如果您发现另一个问题有帮助,请为此帖子创建一个答案,详细说明您的成功。
updatetable1 SET col_a='new'WHERE key'u col='key'