命令 - CREATE INDEX

针对指定的属性创建索引。OrientDB支持三种索引算法和若干基于这些算法的索引类型。

  • SB-Tree算法
    • UNIQUE 不允许重复KEY。重复时报错
    • NOTUNIQUE 允许重复KEY。
    • FULLTEXT 索引单个词
    • DICTIONARY 不允许重复KEY,遇到重复,则覆写
  • Hash Index算法
    • UNIQUE_HASH_INDEX 不允许重复KEY。重复时报错
    • NOTUNIQUE_HASH_INDEX 允许重复KEY。
    • FULLTEXT_HASH_INDEX 索引单个词
    • DICTIONARY 不允许重复KEY,遇到重复,则覆写
  • Lucene引擎
    • LUCENE 全文索引
    • SPATIAL 空间索引。

更多索引,参见Indexes.

语法

CREATE INDEX <index-name> [ON <class-name> (<property-names>)] <index-type> [<key-type>]
  • <index-name> 定义索引的逻辑名称。可以使用 <class-name>.<property-name>的格式,自动创建索引绑定到对应的属性。

    注意 因为这个特征,所以索引名称不能包含句号。

  • <class-name> 定义索引的类,类必须已经存在。

  • <property-names> 定义索引的属性,逗号分隔。这些属性必须在数据库中定义。
  • <index-type> 定义索引的类型。
  • <key-type> 定义需要的key的类型。自动创建索引是,会由对应的属性的类型决定。如果不指定,那么OrientDB使用第一次插入的数据类型。

例子

  • 使用SB-Tree算法建立唯一索引:

    orientdb> CREATE INDEX jobs.job_id UNIQUE
    

创建索引CREATE INDEX,查看索引Indexes