更改表将文本添加到非空值

时间:2011-08-13 19:45:44

标签: php mysql alter-table

有人可以给我一个示例,说明如何更改已包含文本内容的表值, 并保留该文本,但在现有文本前添加新文本? 我正在尝试在1600多个字段中添加其他文本。

我正在查看MySQL并找到连接CONCAT的引用,但据我了解,它会在某个值之后添加文本。

2 个答案:

答案 0 :(得分:2)

如果要更改列的值,请使用UPDATE语句:

update myTable set myColumn = concat('some text before', myColumn, 'some text after') where <where condition>

答案 1 :(得分:1)

您可以在任意位置添加文字。只需按照自己喜欢的方式连接它们。

select *,concat('your_text ',field) as new_text from table 

select *,concat(field,' your_text') as new_text from table 

它还存在concat_ws()函数,其中ws表示“带分隔符”。

select *,concat_ws(' ','your_text',field) as new_text from table.

一旦您确定自己拥有正确的新内容,就可以在更新查询中转换选择内容。 在对更新查询进行错误处理之前尝试等效选择始终是一个好习惯。

update table set field = concat('new text ',field)
where field is not null or field <> ""