在SQL中实现关键字黑名单

在SQL中实现关键字黑名单,sql,blacklist,Sql,Blacklist,我有一个关键字(字符串)列表,其中我需要用一个关键字黑名单(单独表中的字符串)来标识任何匹配项 任何关键字/黑名单匹配项都将在位字段中标记:keyword.isblacklist 有没有一种简单的方法可以在SQL中实现这一点 匹配可能是部分匹配(即黑名单='sex'关键字='sextoy') 解决方案-感谢Daniel Spiewak SELECT Keyword.Keyword FROM Keyword CROSS JOIN BlackList WHERE (Keyword.Keyword

我有一个关键字(字符串)列表,其中我需要用一个关键字黑名单(单独表中的字符串)来标识任何匹配项

任何关键字/黑名单匹配项都将在位字段中标记:keyword.isblacklist

有没有一种简单的方法可以在SQL中实现这一点

匹配可能是部分匹配(即黑名单='sex'关键字='sextoy')

解决方案-感谢Daniel Spiewak

 SELECT Keyword.Keyword FROM Keyword CROSS JOIN BlackList
 WHERE (Keyword.Keyword 
 LIKE { fn CONCAT({ fn CONCAT('%', BlackList.Keyword) }, '%') })

假设单词在
单词
表的
关键字
字段中,并且
黑名单
单词
字段中包含其单词。这绝对不是有效的,但我认为从理论角度来看,这是最好的选择。

比从关键字交叉连接黑名单中提取信息并以编程方式操作dataSELECT关键字.KeywordName要好得多,其中(关键字.KeywordName,如{fn CONCAT({fn CONCAT('%',BlackList.BlackList)},'%')})
SELECT keyword FROM words JOIN blacklist 
               WHERE keyword LIKE CONCAT(CONCAT('%', word), '%')