问题是如何通过连接来更新字符串字段?
以下是创建数据库并添加一行的代码:
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;
怎么做?
有一个重要条件。理论上这个连接可以做几个脚本,所以重要的是,我们更新时没有人可以改变字段值。
答案 0 :(得分:6)
这应该是你所需要的:
UPDATE my_table SET revision_ids = CONCAT(revision_ids, ", ", "999") WHERE article_id = 1;
答案 1 :(得分:2)
我想你可以直接这样做,
UPDATE my_table
SET revision_ids = CONCAT(revision_ids, ', ', '999')
WHERE article_id = 1;
答案 2 :(得分:2)
使用:
UPDATE my_table SET revision_ids = CONCAT(revision_ids, ", 999") WHERE article_id = 1;