USING 子句为新的索引指定辅助存取方法。
辅助存取方法是执行索引所需的所有操作的一组例程,如创建、删除(drop)、插入、删除(delete)、更新和扫描。
B-tree 索引有助于检索某一范围数据值的查询。数据库服务器实现此辅助存取方法并在系统目录表中将其注册为 btree 。
R-tree 索引有助于搜索多维数据。数据库服务器在数据库的系统目录表中将此辅助存取方法注册为 rtree。R-tree 辅助存取方法对 UNIQUE 索引键无效。R-tree 索引不能都被集群。R-tree 索引可存储在非缺省页大小的 dbspace 中。有关 R-tree 索引的更多信息,请参阅 GBase 8s R-Tree 索引用户指南 。
使用 bts 存取方法在存储于表的某个列中的文档存储库中执行词和语句的基本文本查询。要执行基本文本查询,请使用 bts 存取方法在文本列上创建索引,然后使用 bts_contains() 查询谓词函数和其它管理函数。有关 bts 存取方法的更多信息,请参阅Create the index by specifying the bts access method 。
您指定的存取方法必须在 sysams 系统目录表中注册。缺省辅助存取方法是 B-tree 。
如果存取方法是 B-tree ,则您仅能为每个升序或降序列的组合或使用运算符类的功能键创建一个索引。(此限制不适用于其它辅助存取方法。)缺省情况下,CREATE INDEX 创建一个一般 B-tree 索引。如果希望使用非B-tree 的辅助存取方法来创建索引,则您必须在 USING 子句中指定辅助存取方法的名称。
一些用户定义的存取方法作为 DataBlade 模块打包。一些 DataBlade 模块提供在创建它们时需要特定参数的索引。关于用户定义的存取方法的更多信息,请参阅您的辅助存取方法的文档或 DataBlade 模块。
CREATE INDEX loc_ix ON TABLE emp (location) USING rtree; SELECT name FROM emp WHERE location N_equator_equals point('500, 0');
CREATE INDEX tx ON t(data) USING fulltext (WORD_SUPPORT='PATTERN', PHRASE_SUPPORT='MAXIMUM');