暂无图片
暂无图片
8
暂无图片
暂无图片
暂无图片

数据库对象管理MySQL模式创建索引

2023-03-31
378

您可以通过 CREATE INDEX 语句为表创建索引。

OceanBase 数据库支持在非分区表和分区表上创建索引,索引可以是局部索引或全局索引,也可以是唯一索引或普通索引。如果是分区表的唯一局部索引,则必须包含表分区的分区键。

本节主要介绍如何在非分区表上创建索引,分区表上索引的创建请参见 创建分区表索引 章节。

创建索引的 SQL 语法格式如下:

CREATE [UNIQUE] INDEX index_name ON table_name ( column_list ) [LOCAL | GLOBAL] [ PARTITION BY column_list PARTITIONS N ] ;

说明

索引名称在租户范围内不能重复。

  • index_name :索引名。

  • UNIQUE :代表唯一索引。

  • table_name :表名,指需要创建索引的表。

  • column_list :指出对哪些列进行索引,多列时各列之间用逗号分隔。

  • LOCAL :局部索引。

  • GLOBAL :全局索引。在创建索引时如果不显式指定 global 或 local ,则默认是 global 。

  • PARTITION BY column_list PARTITIONS N :指定分区方式及类型。

为非分区表创建普通索引。示例如下:

obclient> CREATE INDEX t1_name_ind ON t1(name);
Query OK, 0 rows affected (0.43 sec)

obclient> SELECT index_name,index_type,table_owner,table_name,uniqueness FROM user_indexes WHERE table_name='T1';
+--------------------------+------------+-------------+------------+------------+
| INDEX_NAME               | INDEX_TYPE | TABLE_OWNER | TABLE_NAME | UNIQUENESS |
+--------------------------+------------+-------------+------------+------------+
| T1_OBPK_1585822641424088 | NORMAL     | TPCC        | T1         | UNIQUE     |
| T1_NAME_IND              | NORMAL     | TPCC        | T1         | NONUNIQUE  |
+--------------------------+------------+-------------+------------+------------+
2 rows in set
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论