我有一个关键字表,我想查询另一个表并返回其中一列至少包含一个关键字的行。
是否可以使用全文索引进行查询?
如果没有,是否有比下面的方法更有效的方法——也许是动态 SQL?
SELECT
*
FROM
dbo.Notes AS NotesContainingKeyword
WHERE
EXISTS
(
SELECT
*
FROM
dbo.Notes
CROSS JOIN dbo.Keywords
WHERE
Notes.Note LIKE '%' + Keywords.Word '%'
AND Notes.Id = NotesContainingKeyword.Id
)
将带有
OR(|)
分隔符的关键字连接到变量中似乎可行。