当前位置:IT168首页 > 技术开发 > 关于DB2 Net Search Extender工具
[收藏此页] [打印] [推荐] [评论]

数据库中如何实现XML文档的全文本搜索

责任编辑:晓熊作者:IT168 chenmin   2008-05-19   
文本Tag: 数据库

【IT168技术文档】

    在DB2 V9中,可以通过DB2 Net Search Extender工具,实现对存储在数据库中的 XML 数据进行全文本搜索。DB2 Net Search Extender 完全支持 XML 数据类型。它使得可以对存储在 XML 列中的文档建立全文本索引。通过对 XML 列创建文本索引,可以查询 XML 文档中的所有文本并执行一些搜索(如相似搜索或通配符搜索)。DB2 Net Search Extender 是DB2 数据服务器产品的一部分,需要单独安装。

    下面示例显示了一个简单的全文本搜索,它要在 DEPTDOC 列中存储的 XML 文档的路径⁄dept⁄description 中的任意位置查找单词“marketing”:
SELECT DEPTDOC
FROM DEPT
WHERE contains (DEPTDOC, SECTIONS("⁄dept⁄description") "marketing") = 1

DB2 Net Search Extender 提供的 contains 函数允许在路径 ⁄dept⁄description 中的任何文本(包括元素或属性名以及元素或属性值)中搜索字符串“marketing”。

    要使用全文本搜索,必须使用 SQL。但是,仍可以将 SQL 查询的结果返回至 XQuery 上下文以进行进一步处理。下面示例显示使用全文本搜索的 SQL 查询产生的结果如何参与 XQuery 表达式: 
XQUERY for $i in db2-fn:sqlquery ('SELECT DEPTDOC FROM DEPT WHERE contains (DEPTDOC, SECTIONS("⁄dept⁄description") "marketing") = 1')//employee return $i/name

 

    在此示例中,使用全文本搜索的 SQL 查询的结果返回至 XQuery FLWOR 表达式的 for 子句。然后,for 子句返回所有 <employee> 元素,并且 return 子句返回检索到的 <employee> 元素中的 <name> 元素。

上一页
1
234下一页
收藏到: 添加到“百度搜藏”添加到“QQ书签”添加到“Google书签”添加到“Yahoo收藏”添加到“和讯网摘”
本文欢迎转载,转载请注明:转载自IT168 [ http://www.it168.com/ ]
本文链接:http://tech.it168.com/d/2008-05-15/200805151021734.shtml
技术开发相关文章   搜索 xml文档
  • 暂无
友情推介