Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 » SQL Anywhere 服务器 - SQL 的用法 » 查询和修改数据 » 全文搜索 » 文本配置对象概念和参考 » 创建或变更文本配置对象时指定的内容

 

STOPLIST 子句 - 配置非索引字表

非索引字表指定创建文本索引时忽略的术语。

如果未定义,此设置的缺省值从缺省文本配置对象的设置中获得,它通常带有一个空的非索引字表。

STOPLIST 对文本索引的影响 STOPLIST 对查询术语的影响
  • GENERIC 文本索引   对于 GENERIC 文本索引,非索引字表中的术语不会插入到文本索引之中。

  • NGRAM 文本索引   对于 NGRAM 文本索引,由非索引字表中的术语形成的 n 元语法词不会包含在文本索引之中。

  • GENERIC 文本索引   对于 GENERIC 文本索引,将忽略非索引字表中的查询术语,因为它们不会在文本索引中存在。

  • NGRAM 文本索引   非索引字表中的术语分解为 n 元语法词,然后将 n 元语法词用于术语过滤。类似地,查询术语将分解为 n 元语法词,然后删除任何与非索引字表中的 n 元语法词相匹配的项目,因为它们不会在文本索引中存在。

执行分析时,文本配置对象中的设置将应用于非索引字表。也就是说,会应用指定的术语断开器和最小/最大长度设置。

NGRAM 文本索引中的非索引字表可能导致意外的结果,因为所储存的非索引字表是 n 元语法词的形式,而不是指定的非索引字表术语形式。例如,对于 MAXIMUM TERM LENGTH 为 3 的 NGRAM 文本索引,如果指定 [STOPLIST 'there'],则以下 n 元语法词将存储为非索引字表:the her ere。这会影响查询任何包含 n 元语法词 the、her 和 ere 的术语的能力。

注意

指定字符串文字时的限制同样适用于非索引字表。例如,必须对撇号进行转义等。

示例目录包含装载多种语言的非索引字表的示例代码。建议仅对 GENERIC 文本索引使用这些示例非索引字表。有关示例目录的位置,请参见示例目录

 另请参见