mysql修改字段内容,但需要排除包含字符串,我以为是这样的 使用not in
UPDATE `*_ecms_games` SET `titlepic`= REPLACE(`titlepic`, "titlepic/", "/gamespics/titlepic/") WHERE "d/file" not in `titlepic`;
实际上这样是不对的,特别是在 WHERE 子句中使用 not in
的方式。正确的语法应该是在 titlepic
字段中排除包含字符串 “d/file” 的记录进行替换。以下是正确的 SQL 查询语句:
UPDATE `www_92game_net_ecms_h5` SET `titlepic` = REPLACE(`titlepic`, "titlepic/", "/gamespics/titlepic/") WHERE `titlepic` NOT LIKE '%d/file%';
我们使用了 REPLACE
函数来替换 titlepic
字段中的字符串,然后在 WHERE
子句中使用 NOT LIKE
来排除包含字符串 “d/file” 的记录。这样只有不包含 “d/file” 的记录才会被替换。
请注意在执行 SQL 查询之前备份你的数据,以防止意外的数据损失。