Sql全文关键词搜索-包含或不包含

Sql全文关键词搜索-包含或不包含,sql,join,full-text-search,Sql,Join,Full Text Search,嗨,我被要求升级我们网站的关键字搜索部分。它需要像照片上那样。 用户可以从选择框中的两个不同选项中进行选择,它引用了我的全文索引列。然后,他/她输入一个法兰西语或单词并说add。它转到“包含框”,这意味着搜索结果需要包含该单词。如果用户将其拖到另一个框中,搜索结果不应包含该单词。 我以某种方式做到了。但是我很担心表现。这些搜索平均每15秒发生一次,该表有约3000万条记录。 这就是我所做的: INNER JOIN CONTAINSTABLE (FullTextDB,column1,'"soft

嗨,我被要求升级我们网站的关键字搜索部分。它需要像照片上那样。

用户可以从选择框中的两个不同选项中进行选择,它引用了我的全文索引列。然后,他/她输入一个法兰西语或单词并说add。它转到“包含框”,这意味着搜索结果需要包含该单词。如果用户将其拖到另一个框中,搜索结果不应包含该单词。 我以某种方式做到了。但是我很担心表现。这些搜索平均每15秒发生一次,该表有约3000万条记录。 这就是我所做的:

INNER JOIN CONTAINSTABLE (FullTextDB,column1,'"software developer*"') ka on a.refnumber = ka.[key] 
left JOIN CONTAINSTABLE (FullTextDB,column1,'"mvc*" ') ri on a.refnumber = ri.[key]
INNER JOIN CONTAINSTABLE (FullTextDB,column2,'"php*" ') yer on a.refnumber = yer.[key] 

WHERE  ri.[key] is null
它带来了正确的结果,但我如何才能改进这一点。我使用左连接来排除。有什么想法吗?
谢谢。

将搜索关键字分组将提高性能

范例

"(A OR B) AND NOT (C)"