SQL Server全文索引如何实际索引目录中的单词? [英] How does SQL Server full-text Index actually index the words in a catalog?

查看:180
本文介绍了SQL Server全文索引如何实际索引目录中的单词?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在努力寻找关于全文索引用于索引分配给文档的全文目录的过程的答案,其中文档主键包含在索引中。我无法找到深入描述这一点的MSDN文章。

I have been searching long and hard for an answer regarding the processes full-text index uses to index the full text catalogs assigned to a document, where the document primary key is included in the indexing. I have not been able to find the MSDN article that describes this in depth.

为什么我不能在全文搜索列中使用它来搜索仅限int的字符串?

Why can't I use it for searching int-only strings in the full text search columns?

请看这里:(好吧,我是新用户,所以我自己重新制作了专栏,因为我无法发布图片)

SEE HERE: (WELL, I'm a new user so I remade the columns myself since I can't post an image)

 ID       FIRSTNAME   LASTNAME    ADDRESS            FULLTEXTCOLUMN
 1         JOHN        DOE        123 Main St.       1  JOHN DOE 123 Main St. 
 2         JANE        DOE        124 Summer St.     2  JANE DOE 124 Summer St.
                                                     ^ ----------^ --can't search 

例如,在这个链接,帖子的作者表明他已经在他的全文索引列中包含了主键唯一索引 - 但为什么呢?在尝试 CONTAINS()搜索我自己的int值后,搜索找不到任何没有附加文本的内容。

For example, in this link, the author of the post shows that he has included the primary key int-only indexes in his full text-indexed column --- but why? After trying a CONTAINS() search on the int values for myself, the search can't find anything without text attached.

那么为什么这么多人在他们的目录中只显示整数字符串,如果它们不可搜索?我的目录中非常需要整数搜索选项,希望我只是遗漏了一些东西。

So why do so many people show integer-only strings in their catalog if they aren't searchable? I have a huge need for integer-search options in my catalog, and hope I'm just missing something.

这是否意味着索引只分配给那些字符串至少包含一个字母?

Does this mean that the indexes are only assigned to strings that contain at least one letter?

此问题这里描述的目录格式非常接近我试图欺骗系统在SQL Server中做的事情(因为这是我唯一的数据库选项) 。

This question here describes a catalog format very close to what I'm trying to cheat the system to do in SQL Server (because this is my only database option).

感谢您的帮助!

是的,这是我的封闭式问题这里但我不在乎,因为它是一个真实的问题和重要的问题。我有一群人在想我这个。

And yes, this is my closed question here but I don't care because it is a "real" question and important one. I have a team of people behind me wondering this.

推荐答案

经过大量的测试,(并关闭了StopList,阻止索引仅整数字符串 - 文章的作者链接DID所做的事情)它看起来像索引由空格分隔的每个字符串,包括整数。我相信实际索引的单词会在目录中使用有关该列中的行,列和单元格的信息,而不是位置。

After a lot of testing, (and turning off the StopList, which prevented indexing the integer-only strings --which the author of the article linked DID do) it looks like it indexes every string delimited by a space, including the integers. I believe the words that are actually indexed go in the catalog using information about the row, column, and sort of cell within that column, or position, rather.

所有内容整个表获得一个关系索引,只要它是以空格分隔的。

Everything in that entire table gets a relational index, as long as it is space-delimited.

这篇关于SQL Server全文索引如何实际索引目录中的单词?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆