网站源代码 | 站长工具 | 网站模板 |设为首页 |加入收藏|
学习论坛 会员投稿 RSS订阅 站内通告:
搜索: 您的位置网站源代码 > 网络编程 > asp教程 > asp程序中使用全文索引进行全文查询

asp程序中使用全文索引进行全文查询

2009-10-31 08:58:21 来源:原创 【 】 浏览:
摘要: 全文查询也是SQServer提供的新功能,它使用户可以高效检索存储在数据表中的char、varchar、text、ntext、nchar和nvarchar等数据类型列中的文本数据。在进行全文查询之前应建立和填充数据库全

使用全文索引进行全文查询
全文查询也是SQServer提供的新功能,它使用户可以高效检索存储在数据表中的char、varchar、text、ntext、nchar和nvarchar等数据类型列中的文本数据。在进行全文查询之前应建立和填充数据库全文索引。
使用CONTAINS谓词和FREETEXT谓词可以进行全文查询,下面分别进行介绍。
   使用CONTAINS谓词进行全文查询
CONTAINS谓词的功能是可以在表中的所有列或者指定列中搜索一个字或短语、一个字或短语的前缀、与一个字相近的另一个字、一个单词的派生词、一个重复出现的字等。CONTAINS谓词只能在WHERE子句中使用。
在数据表已创建全文索引并且启动完全填充的前提下,使用CONTAINS谓词进行全文查询。
示例:
查询用户名称“UserName”中包含某个单个字或词(变量“txt_name”表示单个字或词)的用户信息,代码如下:
<%Conn.Execute("select UserName,Score from UserInfo where contains(UserName, '"&txt_name&"')")%>
查询用户名称“UserName”中包含某个短语(变量“txt_name”和变量“txt_name2”表示短语)的用户信息,代码如下:
<%Conn.Execute("select UserName,Score from UserInfo where contains(UserName, '""&txt_name&"" or ""&txt_name2&""')")%>
查询用户名称“UserName”中以变量“txt_name”为前缀的用户信息,代码如下:
<%Conn.Execute("select UserName,Score from UserInfo where contains(UserName, '""&txt_name&"*"')")%>
查询用户名称“UserName”中变量“txt_name”附近有变量“txt_name2”的用户信息,代码如下:
<%Conn.Execute("select UserName,Score from UserInfo where contains(UserName, '"&txt_name&" near "&txt_name2&"')")%>
   使用FREETEXT谓词
FREETEXT谓词的功能是在一个表的所有列或者指定列中搜索一个自由文本格式的字符串,全文查询引擎内部将字符串拆分为若干个搜索词,并赋予每个词以不同的加权,然后查找匹配,并返回与该字符串匹配的数据行。在使用FREETEXT谓词时,首先要为数据表创建全文索引。
使用FREETEXT谓词,查询用户名称“UserName”中与变量“txt_name”、变量“txt_name2”或者变量“txt_name3”相匹配的数据行,代码如下:
<%Conn.Execute("select * from UserInfo where freetext(UserName, '"&txt_name&" "&txt_name2&" "&txt_name3&"')")%>


顶一下
(1)
100%
踩一下
(0)
0%
Tags: asp教程
责任编辑:小人物
收藏】 【挑错】 【推荐】 【打印
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片
关于我们 | 网站声明 | 广告服务 | 招聘英才 | 联系我们 | 网站地图 | RSS订阅 |