我在表中有一堆图像引用,如:
data/fabrics/signature/signature1.jpg
data/fabrics/signature/signature2.jpg
我需要通过表格并在图像路径中添加一个额外的文件夹,如:
data/group1/fabrics/signature/signature1.jpg
data/group1/fabrics/signature/signature2.jpg
有没有办法只使用MySQL查询来执行此操作,还是需要使用PHP来连接字符串然后更新数据库?
答案 0 :(得分:4)
您可以使用简单的替换函数,用不同的开头替换字符串的开头。如果替换是如此简单,可能是最简单的解决方案。
UPDATE tbl SET col=REPLACE(col, 'data/fabrics', 'data/group1/fabrics') WHERE xxx;
您可能必须使用不同的WHERE
子句运行其中的一些,具体取决于所需的特定替换。
答案 1 :(得分:0)
update table1
set link=substring(link,1,charindex('/',link,1))+
'group1'+substring(link,charindex('/',link,1),LEN(link))
where (your condition)
<强> SQL Fiddle 强>