3

问题是如何通过连接来更新字符串字段?

这是创建数据库并添加一行的代码:

CREATE DATABASE  my_db;                                                          
USE my_db;

CREATE TABLE IF NOT EXISTS my_table(
     article_id INTEGER unsigned,
     revision_ids VARCHAR(10),
     PRIMARY KEY (article_id)
);

INSERT INTO my_table (article_id, revision_ids) VALUES (1, "154");

我需要编写将字符串连接到 revision_ids 字段的代码。例如,我需要将“, 999”连接到“154”,所以我会得到“154, 999”。我的代码版本不起作用:

UPDATE my_table SET revision_ids = CONCAT((SELECT revision_ids FROM my_table WHERE article_id = 1), ", ", "999") WHERE article_id = 1;

怎么做?

有一个重要的条件。从理论上讲,这种连接可以执行多个脚本,因此重要的是,当我们更新时,没有人可以更改字段值。

4

3 回答 3

6

这应该是您所需要的:

UPDATE my_table SET revision_ids = CONCAT(revision_ids, ", ", "999") WHERE article_id = 1;
于 2012-09-18T02:19:25.233 回答
2

我想你可以直接这样做,

UPDATE my_table 
SET revision_ids = CONCAT(revision_ids, ', ', '999') 
WHERE article_id = 1;
于 2012-09-18T02:18:49.977 回答
2

采用:

UPDATE my_table SET revision_ids = CONCAT(revision_ids, ", 999") WHERE article_id = 1;
于 2012-09-18T02:20:02.580 回答