SHOW INDEX 语句 用于查看一个表的索引信息。

所需权限

用户必需具有表的任一权限

别名

在CockroachDB, SHOW INDEX有两个别名,如下:

概要

图片

参数

Parameter Description
table_name 显示索引信息的表名

返回

下面是每个索引返回的字段。

Field Description
Table 表名
Name 索引的名字
Unique 索引所在的列是否是唯一的。 取值: truefalse.
Seq 列在做索引中的位置,从1开始。
Column 索引列
Direction 在索引中列的排序规则。取值:对于索引列, ASC 或者DESC;对于存储列,为N/A
Storing 索引创建时,STORING条件是否使用了。 取值:true 或者 false
Implicit 虽然索引创建时,没有显示的包含某列,单该列是否隐式的包含在索引中。取值:true 或者 false

现在,primary key 列是唯一一个会隐式的包含在二级索引中的列。包含主键列后,当要查找的列不在索引中时,可以提高查找性能。

例子

> CREATE TABLE t1 (
    a INT PRIMARY KEY,
    b DECIMAL,
    c TIMESTAMP,
    d STRING
  );

> CREATE INDEX b_c_idx ON t1 (b, c) STORING (d);

> SHOW INDEX FROM t1;
+-------+---------+--------+-----+--------+-----------+---------+----------+
| Table |  Name   | Unique | Seq | Column | Direction | Storing | Implicit |
+-------+---------+--------+-----+--------+-----------+---------+----------+
| t1    | primary | true   |   1 | a      | ASC       | false   | false    |
| t1    | b_c_idx | false  |   1 | b      | ASC       | false   | false    |
| t1    | b_c_idx | false  |   2 | c      | ASC       | false   | false    |
| t1    | b_c_idx | false  |   3 | d      | N/A       | true    | false    |
| t1    | b_c_idx | false  |   4 | a      | ASC       | false   | true     |
+-------+---------+--------+-----+--------+-----------+---------+----------+
(5 rows)

See Also