我对这个感到绝望。
我的Maria MySql DB中有一个包含以下数据的字段:
Dummydata Dummydata
Dummydata Dummydata 15
Dummydata 124578 KEYWORD
在最后一行中它也可能看起来像这样:
Dummydata 124578KEYWORD
要么
Dummydata 124578-KEYWORD
等等
现在我有一个大约3000个关键字的列表,需要在我的结果中排除,这基本上是我唯一的标准。
我试过这样的
AND NOT (FIELD LIKE '%KEYWORD1%' OR FIELD LIKE '%KEYWORD2%')
在这里,它只是回归一切,就像它被忽略了一样
和
AND NOT (FIELD IN ('%KEYWORD1%','%KEYWORD2%')')
这看起来只是在第一段搜索
它似乎没有工作:(
你能帮我吗?
只需几个关键字,您就可以使用NOT REGEXP
/ NOT RLIKE
AND FIELD NOT RLIKE '[0-9]+[ -]?(keyword1|keyword2|keyword3)'
您还可以使用关键字创建表格。然后使用带有NOT EXISTS
的RLIKE
AND NOT EXISTS
(
SELECT 1
FROM wordstoavoid w
WHERE t.FIELD RLIKE CONCAT('[0-9]+[ -]?', w.word)
);
测试可以找到here