bts 访问方法是辅助访问方法,用于创建支持 Basic Text Search 的索引。
元素 | 描述 |
---|---|
column_name | 表内包含要搜索的文本文档的列的名称。 |
expression | 用于定义索引段的表达式。必须返回布尔值。只能包含来自当前表的列和来自一行的数据值。不允许子查询或聚集。内置的 CURRENT、DATE、SYSDATE 和 TODAY 函数在此处无效。bts_contains() 搜索谓词无效。 |
field | 建立索引的列名。 |
index_name | bts 索引的名称。 |
max_clauses | Basic Text Search 查询中的最大子句数。缺省值为 1024。 |
op_class | 适用于 column_name 中指定的数据类型的运算符类。 |
space_name | 存储 bts 索引的智能大对象空间或外部空间的名称。 |
table_name | 要为其创建索引的表的名称。 |
tempspace_name | 用于存储临时文件的空间的名称。 |
thesaurus_index | 对同义词词典表创建的 bts 索引的名称。 |
必须为计划搜索的各文本列创建 bts 索引。
您可以为每个文本列创建单独的 bts 索引,也可以为表中的多个文本列创建组合索引。
创建 bts 索引之后,不能更改其特征。相反,必须删除该索引并重新创建。
数据类型 | 运算符类 |
---|---|
BLOB | bts_blob_ops |
CHAR | bts_char_ops |
CLOB | bts_clob_ops |
LVARCHAR | bts_lvarchar_ops |
NCHAR | bts_nchar_ops |
NVARCHAR | bts_nvarchar_ops |
VARCHAR | bts_varchar_ops |
thesaurus 和 thesaurus_index 参数要求将 query_default_operator 设置为 OR。
使用 query_default_field 索引参数可覆盖用于具有显式命名字段的查询的隐式缺省字段。如果要查询特定列中的文本,请创建组合索引。使用 query_default_field="*" 选项可创建组合索引,以对同名字段下索引中所包括的每个列中的文本建立索引。如果将 query_default_field="*" 选项与 xmltags 选项组合使用,那么将仅对 XML 列创建组合索引。
CREATE INDEX desc_idx ON products (brands bts_char_ops) USING bts IN sbsp1;
CREATE INDEX bts_idx ON bts_tab(col2 bts_char_ops) USING bts FRAGMENT BY EXPRESSION ( col1 <= 1000000) IN bts_sbspace00, (col1 > 1000000 and col1 <= 2000000) IN bts_sbspace01, REMAINDER IN bts_sbspace36;