我在表中有很多条目,以FOO开头,以BAA结尾
这样:
FOO here anything 111 BAA
FOO here anything 222 BAA
FOO here anything 333 BAA
FOO here anything 444 BAA
FOO here anything 555 BAA
我想删除所有这些..包括FOO
和BAA
普通选择查询使用LIKE 'FOO%BAA'
运行,但不使用 REPLACE。
有什么线索吗?
此答案假设您要删除以 开头并包括FOO
的文本,最多BAR
,只要这两个字符串都出现。 它还假定FOO
和BAR
分别发生一次(如果它们发生(。 一种方法是拼接掉你不需要的文本:
UPDATE yourTable
SET col = CONCAT(SUBSTRING_INDEX(col, 'FOO', 1), SUBSTRING_INDEX(col, 'BAA', -1))
WHERE col LIKE '%FOO%BAA%';
下面的演示没有显示更新,但至少表明拼接逻辑有效。