PostgreSQL 9.4.4 中文手册 | |||
---|---|---|---|
上一页 | 上一级 | 附录 F. 额外提供的模块 | 下一页 |
dict_int是一个全文检索的扩展字典模板的示例。这个示例字典的目的是控制整数 (有符号和无符号)的索引,允许在防止唯一码的数量过度增长时给整数索引, 这将大大的影响搜索的性能。
该字典接受两个选项:
maxlen参数声明整数数字的最大位数。缺省值是6。
rejectlong参数声明一个超长的整数是否应该被截断或忽略。如果rejectlong 为false(缺省),那么字典返回该整数前面的maxlen位。如果 rejectlong为true,那么字典认为一个超长的整数是一个干扰词, 所以它将不会被索引。请注意,这也意味着这样一个整数是不能被搜索的。
安装dict_int扩展来创建基于它的一个文本搜索模板intdict_template 和一个字典intdict,带有缺省的参数。你可以修改这些参数,例如
mydb# ALTER TEXT SEARCH DICTIONARY intdict (MAXLEN = 4, REJECTLONG = true); ALTER TEXT SEARCH DICTIONARY
或创建新的基于该模板的字典。
要测试这个字典,可以尝试
mydb# select ts_lexize('intdict', '12345678'); ts_lexize ----------- {123456}
但是实际的使用情况会涉及包含它在一个文本搜索配置里,就像第 12 章 里描述的那样。可能看起来像这样:
ALTER TEXT SEARCH CONFIGURATION english ALTER MAPPING FOR int, uint WITH intdict;