我有一个名为Products
的表格,其中包含产品标题。其中一些标题有我想要替换的单词。该表包含超过6,000条记录。文本字符串位于Title
列
ID | Title | Description | Price
我有另一个名为ReplaceText
的表,其中包含我要搜索的字符串列表和新文本字符串。 (例如小|小)这目前有102条记录。
ID | OldString | NewString
我想创建一个PHP / MySQL脚本来搜索Title
表中的Products
字段,以查找来自'OldString field in the
ReplaceText`表的单词。
我尝试了各种方法,但都无法破解代码。请帮助:)
提前谢谢。
答案 0 :(得分:0)
我建议使用以下方法,仅使用SQL查询。
首先,创建一个临时表ProductsTMP
,其中只包含带有Products
新行的Title
行。
CREATE TEMPORARY TABLE ProductsTMP AS
SELECT p.ID, r.NewString AS Title, p.Description, p.Price
FROM Products p INNER JOIN ReplaceText r ON p.Title = r.OldString;
然后,从原始Products
表中删除旧行:
DELETE FROM Products
WHERE ID IN (SELECT ID FROM ProductsTMP);
最后,将ProductsTMP
中更新的行添加到原始表Products
,然后删除临时表:
INSERT INTO Products (ID, Title, Description, Price)
SELECT ID, Title, Description, Price FROM ProductsTMP;
DROP TABLE ProductsTMP;