中华网校

系列网站: 中华网校 | www.网校.com | 3D模型 | 中华网校教育

电脑网校 | 业界新闻 | 职业网校 | 网校宝典 | 软件下载 | 网校论坛 | 网校联盟

电脑入门 | 网页设计 | 网络编程 | 图形图象 | 三维空间 | 多媒体 | 程序语言 | 操作系统 | 系统专题 | 办公应用 | 软件宝典 | 硬件天下 | 

 

您的位置:首页 >> 网络编程 >> SQLServer >> 新闻正文

Microsoft SQL Server 全文索引服务  

作者:_  时间:2004-7-10  来自:中华网校  责任编辑:  阅读次数:

SQL 7的全文检索和Index Server的检索方式非常类似。


Contains

AND, OR, NOT

可以在Contains中很方便使用逻辑表达式

Example:

Select username from member where contains(userinfo,'"作家" AND "木匠"')

Select username from member where contains(userinfo,'"作家" OR "木匠"')

Select username from member where contains(userinfo,'"作家" AND NOT "木匠"')

NEAR

这是一个在普通的逻辑表达式中没有的关键字,意思是很简单,就是说找到靠近的两个词

Example:

Select Content from MicrosoftRecord where contains(Content,'"比尔·盖茨"
NEAR "保罗·艾伦"')

这就表示要找到全文中包含比尔·盖茨和保罗·艾伦,并且两个词相隔不远。

FORMSOF INFLECTIONAL

这个功能可以查找单词的各种形式,比如过去式、复数、动词形式、名词形式等。可惜对中文没什么用

Example:

SELECT ProductName FROM Products WHERE CONTAINS(ProductName,'FORMSOF (INFLECTIONAL, dry)')

*

这个功能可以查找单词的前缀,不过对中文也没有什么用处

Example:

SELECT ProductName FROM Products WHERE CONTAINS(ProductName, '"dis*"')

ISABOUT WEIGHT

这个功能可以给复合查询时不同的条件以不同的权重,以决定返回的记录集的顺序

SELECT CategoryName, Description FROM Categories WHERE CONTAINS(Description, 'ISABOUT
spread weight (.8), sauces weight (.4), relishes weight (.2) )' )

权重的值可以从0.0到1.0

ContainsTable

它的使用方式和Contains基本相同,这里就不再重复介绍了。要提到的是它返回的是一张供你进一步查询的表,而不是一个查询条件。

FreeText

如果使用这种方式,那么查询的时候会使用分词技术来实现模糊查询,并且过滤掉一些非关键词,比较类似于Contains中的FORMSOF,可惜对中文也没有什么支持

Example:

SELECT CategoryName FROM Categories WHERE FREETEXT (Description, 'sweetest candy bread and
dry meat' )

FreeTextTable

它和FreeText的差别就跟Contains和ContainsTable的差别一样。


相关文章 最新文章 推荐文章
Microsoft SQL Server 全文索引服务

  中华网校依法保护知识产权,如果我们的文章有涉及或侵犯您的有关权益,请即时与我们 联系, 注明网址及文章,我们会即时处理或删除,感谢您的合作!中华网校email
  中华网校由广州市中六电脑城智锐计算机专业培训学院及中华网校技术中心提供网络支持未经本站许可任何个人网站、书刊报社一律不得私自复制,转载本站内容!

关于中华网校 | 广告服务 | 版权声明 | 投稿指南 | 网站合作 | 友情链接 | 网站地图

 

版权所有 中华网校 & 智锐网校 1999-2004 COPYRIGHT (C) 1999-2004 www.ZhiRui.com ALL RIGHTS RESERVED

 
/**/