【发布时间】:2014-02-18 17:36:47
【问题描述】:
我一直在互联网上搜索,发现全文搜索通常具有更好的性能。
我按照this post 上的说明在我的机器上设置了词库表,这样我就可以使用它并更加熟悉全文搜索。
我正在 Microsoft SQL Server Management Studio 2008 中查看所有内容。
当我运行查询时。我注意到我的 LIKE 搜索比我的 FREETEXT 搜索更快,这与我在大多数 wiki 站点/页面上找到的结果相矛盾。
以下是我运行的查询:
select *
from TheThesaurus
where freetext(TheDefinition, 'aspire')
select *
from TheThesaurus
where TheDefinition like '%aspire%'
LIKE 搜索耗时 0 秒,FREETEXT 搜索耗时 6 秒。
LIKE 搜索返回 70 行,FREETEXT 搜索返回 94,这使得 FREETEXT 搜索更准确,结果更好。
我缺少什么导致FREETEXT 搜索比 LIKE 搜索慢吗?
我真的很想在我的程序中使用 FREETEXT 搜索,因为它会返回更多命中(收集更多数据),但速度是一个重要问题。
感谢您的帮助!
【问题讨论】:
-
你看执行计划了吗?
-
试试
UPDATE STATISTICS TheThesaurus
标签: sql performance search full-text-search freetext