社区
MS-SQL Server
帖子详情
关于全文索引
thomasfu
2003-10-09 05:22:47
全文索引的作用及如何应用
...全文
49
1
打赏
收藏
关于全文索引
全文索引的作用及如何应用
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
pengdali
2003-10-09
打赏
举报
回复
全文索引和查询概念
全文索引、查询和同步化最主要的设计要求是,在注册进行全文检索的所有表上都有一个唯一的全文键列(或者单列主键)。全文索引对使用的重要字及其所在位置进行跟踪。
例如,假定有一个对 DevTools 表的全文索引。全文索引可能指出在 Abstract 列的第 423 个和第 982 个单词处找到了单词 Microsoft,所在的行与 ProductID 6 关联。该索引结构支持对所有包含被索引单词的项进行有效检索,以及高级检索操作,如短语检索和邻近检索。
为防止全文索引因包含很多对检索没有帮助的词而变得臃肿,a、and、is 或 the 这类额外的词都忽略不计。例如,指定"the products ordered during these summer months"与指定"products ordered during summer months"是一样的。有这两个字符串的行都会被返回。
目录 \Mssql\Ftdata\Sqlserver\Config 下提供了多种语言的干扰词列表。在安装带有全文检索支持的 Microsoft® SQL Server™ 时会创建这个目录,并同时安装干扰词文件。干扰词文件可以编辑。例如,高技术公司的系统管理员可以把单词 computer 添加到他们的干扰词表中去。(如果编辑干扰词文件,则必须在更改生效之前重新填充全文目录。)下表显示了干扰词文件及其相应的语言。
干扰词文件 语言
Noise.chs 简体中文
Noise.cht 繁体中文
Noise.dat 语言中性
Noise.deu 德语
Noise.eng 英语(英国)
Noise.enu 英语(美国)
Noise.esn 西班牙语
Noise.fra 法语
Noise.ita 意大利语
Noise.jpn 日语
Noise.kor 韩文
Noise.nld 荷兰语
Noise.sve 瑞典语
在处理全文查询时,检索引擎将满足检条件的行的键值返回给 Microsoft SQL Server。比如有一个 SciFi 表,其中 Book_No 列是主键列。
Book_No Writer Title
A025 Asimov Foundation's Edge
A027 Asimov Foundation and Empire
C011 Clarke Childhood's End
V109 Verne Mysterious Island
假定想使用一个全文检索查询来查找包含单词 Foundation 的书名。在本例中,将从全文索引获得值 A025 和 A027。然后 SQL Server 用这些键值和其它栏的信息响应该查询。
下表显示了存储全文索引数据所使用的语言。这些语言基于 SQL Server 安装期间选择的 Unicode 排序规则区域设置标识符。
Unicode 排序规则区域设置标识符 全文数据存储所用的语言
中文注音符号(台湾) 繁体中文
汉语拼音 简体中文
中文笔画 简体中文
中文笔画(台湾) 繁体中文
荷兰语 荷兰语
英语(英国) 英语(英国)
法语 法语
通用 Unicode 英语(美国)
德语 德语
德文电话簿 德语
意大利语 意大利语
日语 日语
日语 Unicode 日语
韩文 韩文
韩文 Unicode 韩文
现代西班牙语 西班牙语
瑞典/芬兰语 瑞典语
此列表中没有的其它所有 Unicode 排序规则区域设置标识符值都映射到使用空格分隔单词的中性语言单词的断字符和词干分隔符。
说明 Unicode 排序规则区域设置标识符设置用于所有可进行全文索引的数据类型(如 char、nchar 等)。如果为 char、varchar 或 text 类型列的排序次序设置的语言类型,不是 Unicode 排序规则区域设置标识符语言,那么在对 char、varchar 和 text 类型的列进行全文索引和查询时,仍然使用 Unicode 排序规则区域设置标识符值。
SQL Server 2014 索引和游标
主讲内容:第一讲 课程简介第二讲 索引简介第三讲 创建索引第四讲 查看索引第五讲 索引管理第六讲
全文索引
等课程
关于
全文索引
的动态维护
关于
全文索引
的动态维护 我看了好多关于
全文索引
的动态维护的文章。对整体有个总结,如下: 现在最通用的全文检索的方法都是倒排序索引结构。当数据量很大的时候,这种倒排序索引结构在查询时能有很好的性能。
全文索引
的动态维护主要是指在已经建好的索引的基础上,不断地进行insert/update/delete操作,并且需要快速的对新加入的数据进行query,所以这
MySQL索引系列:
全文索引
什么是
全文索引
?
全文索引
首先是 MySQL 的一种索引类型,也是搜索引擎的关键技术。 试想在1M大小的文件中搜索一个词,可能需要几秒,在100M的文件中可能需要几十秒,如果在更大的文件中搜索那么就需要更大的系统开销,这样的开销是不现实的。 所以在这样的矛盾下出现了
全文索引
技术,有时候有人叫倒排文档技术。
全文索引
的作用是什么?
全文索引
是将存储在数据库中的大段文本中的任意内容信息查找出来的技术。 既然是查找包含某些内容的文本,用 like + 通配符 或者正则表达式就可以实现模糊匹配,为什么还要
全文索引
?
mysql
全文索引
用处_MySQL--
全文索引
作用、原理及使用注意
作用MySQL索引可以分为:主键索引、普通索引、唯一索引、
全文索引
。其中,
全文索引
应该是是比较特殊的,它只有少数的几个存储引擎支持,且只有类型为char、vchar、text的列能建立
全文索引
。以前,只有MyISAM引擎支持
全文索引
,现在InnoDB也可以用了。一般情况,对于模糊查询的情况最容易想到的就是 where ... like %_... 这样。确实,like 关键字在大都数情况下都能完...
针对SQL2008
全文索引
查不到数据的…
在网上查了很多关于
全文索引
查不到数据的问题。 上面说是干扰词的问题,需要修改相应的文件,但是SQL2008的文件又和SQL2005版本的位置什么的不一样,需要用SQL语句进行修改,但是用SQL语句提示没有权限,或干脆找不到这些文件,改了也不管用等,所以SQL2008干扰词的问题很令人头疼。而且很难找到一个好的解决办法。 在这里,有一个新的办法,可以解决或避开这些麻烦的问题。 关键:你所建立的全
MS-SQL Server
34,590
社区成员
254,589
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章