0
我有一个VARCHAR变量,我想删除所有匹配表中的列的子串。到目前为止,我已经建立了一个查询,将返回是我的变量的子串的所有行,使用下面的查询:MySql删除所有匹配表值的子串
SET @myval = '%For Her, Shoes,, Sizes 14-24%';
SELECT strReplace
FROM tbl_StringsToReplace
WHERE @myval LIKE CONCAT('%', strReplace, '%');
但我无法写一个REPLACE查询,将取代多个值。我试图写类似以下内容:
SET @myval = REPLACE((SELECT strReplace
FROM tbl_StringsToReplace
WHERE @myval LIKE CONCAT('%', strReplace, '%')), '', @myval);
但我得到的错误:
错误代码:1242子查询返回多个1行
我很想在实现这一目标纯SQL。 Euther的方式,任何意见将不胜感激。由于
你能提供你的表tbl_StringsToReplace定义和一些示例数据? –
当然,所以tbl_StringsToReplace具有一个柱,strReplace,其值如 “鞋,” “对他来说,” “她,” – mils