(C) IBM Corp. 2000, 2003.
Net Search Extender
管理和用户指南
使用db2ext.highlight 函数来获取有关将文档限定为搜索结果的原因的信息。更准确地说,它可以用来:
- 获取匹配项
- 获取匹配项和周围的文本
- 在文档中的匹配项周围添加用户定义的突出显示标记。
注意,只能将 db2ext.highlight 函数与 db2ext.textsearch 表值函数配合使用。表值函数搜索索引,并将结果提供给 HIGHLIGHT 函数使用。
有关使用
db2ext.textsearch 函数的信息,参见DB2EXT.TEXTSEARCH。
函数语法
>>-db2ext.highlight--------------------------------------------->
>--(--document-content--,--hit-information--,--hit-processing-information--)-><
函数参数
下面是一些输入参数:
- document content CLOB(100K)
- 只支持 TEXT 或 XML 格式的 UTF8 文档。要增加此值,参见DB2EXTHL(实用程序)。
- hit information BLOB(20K)
- 包含匹配项信息的字符串。如果指定了 numberOfHits 参数的话,则此参数值是由 db2ext.textsearch 函数返回的。
- hit processing information VARCHAR(1024)
- 此参数是选项值对的列表,它们之间用逗号“,”字符隔开,并将每个字符串字符用 " " 字符引起来。它指定应当如何对指定的文档处理突出显示。如果未指定任何选项,则将返回原始文档。
- TAGS = ("STRING", "STRING")
- 此选项使用户能够指定要插入到文档中的匹配项前面和后面的标记。如果省略了此选项,则在文档中的匹配项前面和后面不会添加任何标记。
- WINDOW_NUMBER = INTEGER
- 此选项指定突出显示函数应当返回文档的多少个部分(或窗口)。每个窗口都包含一个或多个匹配项,每个窗口中的第一个匹配项确定返回至用户的文档的部分。这些匹配项可能具有也可能没有文本包围在匹配项周围。
如果省略此选项,则采用 0 作为缺省值,并且会返回包含开始和结束标记(如果指定的话)的整个文档。在此情况下,忽略了 WINDOW_SIZE 选项。
- WINDOW_SIZE = INTEGER
- 此选项指定建议的窗口大小(以字节计)。此实际大小可能会根据匹配项数目、匹配项长度以及开始和结束标记大小的不同而有所变化。如果省略了该选项,则 0 为缺省值,并且将只返回周围没有文本的匹配项。
- WINDOW_SEPARATOR = "STRING"
- 此选项指定用来将一个窗口与相邻窗口隔开的标记。如果省略了该选项,则“...”为缺省值。
- FORMAT = "STRING"
- 此选项指定文档的格式。有效值为 XML 或 TEXT。如果省略了此选项,则采用 TEXT 作为缺省值。确保格式值与建立索引期间指定的值相同。
- MODEL_NAME = "STRING"
- 此选项指定与所指定的 XML 文档相关的模型名。注意,如果 FORMAT 为 TEXT,则此选项将产生错误。
- SECTIONS = ("section-name1", ..., "section-nameN")
- 对于 XML 文档,可以限制只突出显示相关部分。例如,可以在模型文件中定义它们。要指定这些部分,用逗号将一个或多个部分名隔开。如果省略了此选项,则对整个 XML 文档执行突出显示。注意,如果 FORMAT 为 TEXT,则忽略此选项。
函数参数
下面是一些返回参数。
- CLOB(200K)
- 突出显示函数将返回包含由突出显示函数修改的文档部分的 CLOB 值。
用法
以下示例说明了可以如何使用 HIGHLIGHT 函数:
select p.id,
p.title,
db2ext.highlight(p.content,
t.hitinformation,
'TAGS = ("<bf>", "</bf>"),
WINDOWS_NUMBER = 5,
WINDOWS_SIZE = 200,
WINDOW_SEPARATOR = "...",
FORMAT = "XML",
SECTIONS = ("section1-name", "section2-name")')
FROM patent p, table (db2ext.textsearch(
'"relational database systems"',
'DB2EXT',
'TI_FOR_CONTENT',
0,
20,
CAST(NULL as BIGINT),
15)) t
WHERE p.id = t.primkey
使用超过 100 KB 的文档将导致 SQL 查询终止并且产生 SQL 错误(SQL 1476N 和
sql 错误 -433)。要避免发生此情况,则使用 db2exthl 命令来增加文档内容大小。有关信息,参见DB2EXTHL(实用程序)。
注意 |
---|
特殊字符(例如“newline”)将按原样返回。 |
限制
- 只支持 XML 和平面文本文档
- 只有 UTF8 数据库受支持。对于二进制文件或 datalink 文档,需要确保文档是以 UTF8 编写的
- 不支持泰国语文档
- 如果建立索引期间与查询时使用的文档格式不匹配,则 HIGHLIGHT 函数将返回无法预测的结果
- 将只突出显示在文档的文本部分找到的匹配项
- 突出显示函数只能与 db2ext.textsearch 函数配合使用
- 字符串值不能包含 " 字符
[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 ]