SQL Server特定术语全文搜索不起作用

时间:2015-01-21 15:27:40

标签: c# sql sql-server database full-text-search

我试图在SQL Server中执行特定术语全文搜索。看起来这样做的方法是将关键字用双引号括起来,这是我在我的应用中做的:

Query = "\"" + model.SearchString + "\""

但是,当我使用诸如" foo bar"之类的术语对数据库执行查询时,它会返回" foo"和" bar"在数据库内。预期的结果是数据库应该只返回具有" foo bar"特别。这是查询:

SELECT o.OpinionDocumentId
FROM CONTAINSTABLE(OpinionDocuments, Html, @query) AS KEY_TBL
LEFT JOIN dbo.OpinionDocuments AS o ON o.OpinionDocumentId = KEY_TBL.[KEY]
WHERE o.Date BETWEEN @from AND @to

这个查询没有从特定关键字集返回结果的原因是什么?

由于

1 个答案:

答案 0 :(得分:0)

我是通过Dba.stackexchange发现的:https://dba.stackexchange.com/questions/89821/sql-server-specific-term-full-text-search-is-not-working

使用NEAR将解决问题:

CONTAINSTABLE(OpinionDocuments, HTML, 'NEAR((Foo, bar), 0, TRUE)') AS KEY_TBL

在哪里' Foo'和' Bar'是关键字,0是它们之间的距离,TRUE指定订单是重要的

相关问题