文档中心MogDBMogDB StackUqbar

文档:v2.0

支持的版本:

其他版本:

索引

在时序表上支持索引相关功能,以便用户根据实际需求使用索引提升查询性能。时序表上支持的索引类型包括Btree和Gin,不支持创建部分索引,Btree可以支持唯一索引。时序表上索引默认是LOCAL索引,不支持创建GLOBAL索引。在时序表执行数据删除时,对应分区上的索引也会一起删除。

创建索引

语法和分区表创建索引语法基本相同,但不支持创建GLOBAL索引。

CREATE [ UNIQUE ] INDEX [ [schema_name.]index_name ] ON table_name [ USING method ]
    ( {{ column_name | ( expression ) } [ COLLATE collation ] [ opclass ] [ ASC | DESC ] [ NULLS LAST ] }[, ...] )
    [ LOCAL [ ( { PARTITION index_partition_name | SUBPARTITION index_subpartition_name [ TABLESPACE index_partition_tablespace ] } [, ...] ) ] ]
    [ INCLUDE ( column_name [, ...] )]
    [ WITH ( { storage_parameter = value } [, ...] ) ]
    [ TABLESPACE tablespace_name ];

修改索引

  • 重命名表索引的名称

    ALTER INDEX [ IF EXISTS ] index_name RENAME TO new_name;
  • 修改表索引的存储参数

    ALTER INDEX [ IF EXISTS ] index_name SET ( {storage_parameter = value} [, ... ] );
  • 设置表索引或索引分区不可用

    ALTER INDEX [ IF EXISTS ] index_name [ MODIFY PARTITION index_partition_name ] UNUSABLE;
  • 重置索引的一个或多个索引方法特定的存储参数为缺省值。与SET一样,可能需要使用REINDEX来完全更新索引。

    ALTER INDEX [ IF EXISTS ] index_name RESET ( { storage_parameter } [,] );
  • 重建表或者索引分区上的索引。

    ALTER INDEX [ IF EXISTS ] index_name REBUILD [ PARTITION index_partition_name ];
  • 重命名索引分区

    ALTER INDEX [ IF EXISTS ] index_name RENAME PARTITION index_partition_name TO new_index_partition_name;
  • 修改索引分区的所属表空间

    ALTER INDEX [ IF EXISTS ] index_name MOVE PARTITION index_partition_name TABLESPACE new_tablespace;

删除索引

DROP INDEX [ CONCURRENTLY ] [ IF EXISTS ] index_name [, ...] [ CASCADE | RESTRICT ];

重建索引

REINDEX  { INDEX|  [INTERNAL] TABLE} name PARTITION partition_name [ FORCE  ];
Copyright © 2011-2024 www.enmotech.com All rights reserved.