MySQL,向所有列值添加字符串

MySQL,向所有列值添加字符串,mysql,concat,Mysql,Concat,有一个包含两列的MySQL数据库表: id,url url列的值类似于'http://www.example.com/" 我需要添加一个字符串,如'http://www.x.com?redirect='到所有列值的开头-即更改如下值: ==> 有人知道我该怎么做吗 我已经研究过如何使用CONCAT(),但到目前为止,我还无法使其正常工作:( 非常感谢你的帮助, Louisa是的,您可以使用CONCAT: SELECT CONCAT('http://www.x.com?redirect=', ur

有一个包含两列的MySQL数据库表: id,url

url列的值类似于'http://www.example.com/"

我需要添加一个字符串,如'http://www.x.com?redirect='到所有列值的开头-即更改如下值: ==>

有人知道我该怎么做吗

我已经研究过如何使用CONCAT(),但到目前为止,我还无法使其正常工作:(

非常感谢你的帮助,
Louisa

是的,您可以使用CONCAT:

SELECT CONCAT('http://www.x.com?redirect=', url) AS url
FROM yourtable

在线查看它的工作情况:

使用concat它会是这样的:

update table set url=concat('http://www.x.com?redirect=',url);

请看下面的代码片段:

update t set data=concat(数据'a');

类似的方法也应该奏效:

update t set data=concat('http://www.x.com?redirect=“,数据);

您可以这样做:

Update myTable
SET data= (SELECT CASE WHEN data IS NULL THEN '' ELSE data END AS data WHERE id = 1) + 'some text'
WHERE id = 1

字段=字段+值在字段为空时不起作用。

是否要永久添加所述前缀(即更新表的内容),或者只将其添加到
SELECT
查询的结果中?此外,这种处理是否更适合应用程序的表示层?太棒了!简单明了的解决方案。非常感谢。