我有一张名为k01cv_sh404sef_urls
的表格
在此表中,我们有以下行:
id, cpt, rank, oldurl, newurl and dateadd
行“oldurl”包含条目,例如:
English/network
English/hardware-and-software
corporate-social-responsibility
我想要一个查询,从“oldurl”行中的所有项目中删除英语/部分,以便英语/网络只是网络,英语/硬件和软件将是硬件和 - 软件等
结果是行“oldurl”包含条目,例如:
network
hardware-and-software
corporate-social-responsibility
答案 0 :(得分:1)
你能逃脱这么简单的事吗?
UPDATE table SET oldurl = REPLACE(oldurl, 'English/', '');
(请先在真实数据上运行之前使用SELECT进行测试!)
答案 1 :(得分:1)
UPDATE k01cv_sh404sef_urls
SET oldurl = SUBSTRING(oldurl FROM 9)
WHERE oldurl LIKE 'English/%'
这不仅仅是读取/尝试仅更新匹配的记录(如果您的表很大但具有oldurl
是最左侧列的索引,这将产生特定的性能优势),但也只会删除出现在字符串最开头的'English/'
。