首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >索引将提高varchar(max)查询性能,以及如何创建索引

索引将提高varchar(max)查询性能,以及如何创建索引
EN

Stack Overflow用户
提问于 2012-05-02 22:54:58
回答 4查看 27.7K关注 0票数 18

首先,我要指出,我对Server索引了解不多。

我的情况是,我有一个Server 2008数据库表,其中包含一个varchar(max)列,该列通常包含大量文本。

我的ASP.NET web应用程序有一个搜索工具,它可以查询此列的关键字搜索,并根据搜索关键字的数量而定,它们可能是一个或多个类似于SQL中的‘%关键字%’语句来执行搜索。

我的web应用程序还允许通过这个表中的其他列进行搜索,而不仅仅是这一列。其他表中也有一些连接。

我的问题是,是否值得在本专栏中创建一个索引来提高这些搜索查询的性能?如果是的话,什么类型的索引,仅仅索引一个列就足够了,还是我需要包括其他列,比如主键和其他可搜索的列?

EN

Stack Overflow用户

回答已采纳

发布于 2012-05-02 23:00:45

如果您正在执行“%关键字%”搜索,那么创建常规索引是不值得的。原因是索引的工作原理就像搜索字典,从中间开始,然后再将差异平分,直到找到单词为止。这个通配符查询就像要求您查找一个包含文本" to“或其他什么的单词--查找匹配的唯一方法是扫描整个字典。

然而,您可能会考虑进行全文搜索,这是针对这种场景(请看这里)的。

票数 10
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10422844

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档