我有一个 messages
包含字段(id、文本)的表。我有一个csv文件(样板字符串),它被加载到另一个临时表中 tmp_import
带字段(txt)。
两者 messages.text
以及 tmp_import
是字符串。 messages
可以包含样板文件 tmp_import
都是我打算搜索的样板字符串。
用例是:
扫描中的行 tmp_import
,对于每行:(i)搜索 messages
表中的所有匹配项,并用空格(“”)字符替换子字符串。
我已经将csv加载到一个临时表中,但仍停留在如何实现用子查询替换的问题上。
UPDATE messages
SET text = REPLACE (text, 'string_to_replace', '')
WHERE text IN (SELECT txt
FROM tmp_import tmp
WHERE messages.text LIKE CONCAT('%', tmp.txt, '%'));
有什么线索能帮我弄到 string_to_replace
把它的价值从 txt
在子查询中。
2条答案
按热度按时间eyh26e7m1#
你可以用
where exists
如果子查询满足where
条款或者使用join从tmp\u import获取值
kjthegm62#