【发布时间】:2011-02-15 05:41:21
【问题描述】:
我需要将数据“添加”到已包含数据的字段中,而不会删除当前存在的内容。例如,如果该字段包含 HTML,我需要向该字段添加额外的 HTML。是否有可以执行此操作的 SQL 调用,或者我是否需要调用该字段中的数据,将新数据连接到现有数据,然后将其重新加载到数据库中?
【问题讨论】:
-
几乎是 stackoverflow.com/questions/680801/… 的复制品——它是关于前置
我需要将数据“添加”到已包含数据的字段中,而不会删除当前存在的内容。例如,如果该字段包含 HTML,我需要向该字段添加额外的 HTML。是否有可以执行此操作的 SQL 调用,或者我是否需要调用该字段中的数据,将新数据连接到现有数据,然后将其重新加载到数据库中?
【问题讨论】:
UPDATE Table SET Field=CONCAT(IFNULL(Field, ''), 'Your extra HTML')
如果字段包含 NULL 值,则 CONCAT 也将返回 NULL。使用 IFNULL 将帮助您更新列,即使它具有 NULL 值。
【讨论】:
追加在字段的末尾,用换行符分隔:
UPDATE Table SET Comment = CONCAT_WS(CHAR(10 USING UTF8), Comment, 'my comment.');
CONCAT_WS() 附加由给定分隔符分隔的多个字符串。 CHAR(10, UTF8) 是换行符。 【讨论】:
UPDATE myTable SET html=concat(html,'<b>More HTML</b>') WHERE id='10'
...例如。当然,您的 WHERE 会有所不同。
【讨论】:
UPDATE Table SET Field=CONCAT(Field,'your extra html');
【讨论】: