频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

全文索引查询模板的使用

来源: 作者: 出处:巧巧读书 2006-10-26 进入讨论组

  Oracle全文索引的查询模板功能可以对在CONTEXT索引上使用CATSEARCH语法,或者在CTXCAT索引上使用CONTAINS语法。

  通过一个例子说明查询模板的使用:

  SQL> CREATE TABLE T (ID NUMBER, DOCS VARCHAR2(1000));

  表已创建。

  SQL> INSERT INTO T VALUES (1, 'IT IS A EXAMPLE FOR QUERY TEMPLETE.');

  已创建 1 行。

  SQL> INSERT INTO T VALUES (2, 'USING THE TEMPLETE CONTAIN OPERATION CAN BE PERFORM ON CTXCAT INDEX.');

  已创建 1 行。

  SQL> INSERT INTO T VALUES (3, 'AND THE CATSEARCH OPERATION CAN BE PERFORM ON CONTENT INDEX.');

  已创建 1 行。

  SQL> COMMIT;

  提交完成。

  SQL> CREATE INDEX IND_T_DOCS ON T(DOCS) INDEXTYPE IS CTXSYS.CONTEXT;

  索引已创建。

  SQL> SELECT ID FROM T WHERE CONTAINS(DOCS, 'TEMPLETE', 1) > 0;

  ID
  ----------
  2
  1

  SQL> SELECT ID FROM T WHERE CONTAINS(DOCS, '<QUERY>
  2 <TEXTQUERY GRAMMAR="CTXCAT">
  3 TEMPLETE
  4 </TEXTQUERY>
  5 <SCORE DATATYPE="INTEGER"/>
  6 </QUERY>', 1) > 0;

  ID
  ----------
  2
  1

  上面这个给出了对于CONTEXT索引使用CATSEARCH语法的例子,不过这种用途的实际意义不大,不过下面的例子的实际意义就比较大了:

  SQL> DROP INDEX IND_T_DOCS;

  索引已丢弃。

  SQL> CREATE INDEX IND_T_DOCS ON T(DOCS) INDEXTYPE IS CTXSYS.CTXCAT;

  索引已创建。

  SQL> SELECT ID FROM T WHERE CATSEARCH(DOCS, '$USE', NULL) > 0;

  未选定行

  SQL> SELECT ID FROM T WHERE CATSEARCH(DOCS, '<QUERY>
  2 <TEXTQUERY GRAMMAR="CONTEXT">
  3 $USE
  4 </TEXTQUERY>
  5 <SCORE DATATYPE="INTEGER"/>
  6 </QUERY>', NULL) > 0;

  ID
  ----------
  2

  SQL> SELECT ID FROM T WHERE CATSEARCH(DOCS, ';((EXAMPLE, TEMPLETE), 3)', NULL) > 0;

  未选定行

  SQL> SELECT ID FROM T WHERE CATSEARCH(DOCS, ';((EXAMPLE, TEMPLETE), 3)', NULL) > 0;

  未选定行

  SQL> SELECT ID FROM T WHERE CATSEARCH(DOCS, '<QUERY>
  2 <TEXTQUERY GRAMMAR="CONTEXT">
  3 ;((EXAMPLE, TEMPLETE), 3)</TEXTQUERY>
  4 <SCORE DATATYPE="INTEGER"/>
  5 </QUERY>', NULL) > 0;

  ID
  ----------
  1

  CATSEARCH语法本身不支持ABOUT、STEM、FUZZY、NEAR等操作,但是使用了查询模板,这些本来CONTAINS语法才支持的操作都可以在CTXCAT索引上使用了。

静态页面:http://www.qqread.com/oracle/2006/10/s254857.html 更多文章 更多内容请看SQL Server 索引和查询专题专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
最新论坛文章
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章