检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
索引 唯一索引 普通索引和前缀索引 HASH索引 BTREE索引 SPATIAL空间索引 FULLTEXT全文索引 删除索引 索引重命名 父主题: MySQL语法迁移
索引 CREATE TABLE语句支持创建索引。DSC支持带有主索引(PRIMARY INDEX)和唯一索引(UNIQUE INDEX)的TABLE语句。 该工具不会添加DISTRIBUTE BY HASH用于创建具有主键(PRIMARY KEY)和非唯一主索引的表。 输入:CREATE
索引 在GaussDB(DWS)中创建索引期间,索引名不能与模式名一起指定。该索引将在创建索引表的模式中自动创建。 图1 输入:索引 图2 输出:索引 输入:基于CASE函数的索引 函数索引是基于列函数或表达式计算结果创建的索引。 输入 1 2 3 4 5 6 7 8 9 CREATE
管理索引 可以在表中创建索引,方便更快更有效地查找数据。 创建表后,可以在该表中添加新索引。 创建索引 右键单击表下的“索引”,选择“创建索引”。 弹出“创建索引”对话框。 输入详细信息,单击“创建”或单击“预览查询”按钮预览建索引语句。“可用列”无需按序排列。从“可用列”移到“
只输一个参数时,系统默认采用default_text_search_config所指定的分词器。 创建GIN索引时必须使用to_tsvector的两参数版本,否则索引内容可能不一致。只有指定了分词器名称的全文检索函数才可以在索引表达式中使用。因为索引的内容必须不受default_text_search_confi
HASH索引 GaussDB(DWS)不支持HASH索引。DSC工具迁移时会根据GaussDB(DWS)的特性将其迁移为普通索引。 内联HASH索引。 输入示例 1 2 3 4 5 6 7 8 9 10 11 12 CREATE TABLE `public`.`
普通索引和前缀索引 GaussDB(DWS)不支持前缀索引,也不支持内联普通索引。DSC工具迁移时会根据GaussDB(DWS)的特性将其迁移为普通索引。 内联普通(前缀)索引。 输入示例 1 2 3 4 5 6 CREATE TABLE IF NOT EXISTS `public`
唯一索引 GaussDB(DWS)不支持唯一索引(约束)与主键约束联合使用。DSC工具迁移时会根据GaussDB(DWS)的特性进行相应适配。 MySQL唯一索引(约束)与主键约束联合使用的场景在工具迁移时会与OLAP场景下的分布键构成复杂的关系。工具暂不支持唯一索引(约束)与主键约束联合使用的场景。
FULLTEXT全文索引 GaussDB(DWS)不支持FULLTEXT全文索引。DSC工具迁移时会根据GaussDB(DWS)的特性进行相应适配。 内联FULLTEXT全文索引。 输入示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
删除索引 MySQL支持DROP INDEX和ALTER TABLE DROP INDEX两种删除索引的语句。DSC工具迁移时会根据GaussDB(DWS)的特性进行相应适配。 DROP INDEX 输入示例 1 2 3 4 5 6 7 8 9 10 11 12
索引重命名 DSC工具支持索引重命名,对索引名前加表名前缀防止索引名冲突(只支持创建有具体索引名的DDL语句,目前不支持删除索引的重命名,修改该参数需慎重)。 修改配置 打开表1 features-mysql.properties文件中的配置参数配置文件,修改如下参数为true。(默认false:不进行重命名)
BTREE索引 GaussDB(DWS)支持BTREE索引,但USING BTREE关键字在语句中的位置与MySQL存在差异。DSC工具迁移时会根据GaussDB(DWS)的特性进行相应适配。 内联BTREE索引 输入示例 1 2 3 4 5 6 7 8 9 10
SPATIAL空间索引 GaussDB(DWS)不支持SPATIAL空间索引。DSC工具迁移时会根据GaussDB(DWS)的特性进行相应适配。 内联SPATIAL空间索引。 输入示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
只输一个参数时,系统默认采用default_text_search_config所指定的分词器。 创建索引时必须使用to_tsvector的两参数版本,否则索引内容可能不一致。只有指定了分词器名称的全文检索函数才可以在索引表达式中使用。因为索引的内容不受default_text_search_config的影响
一个索引可以定义在表中的多个属性上。目前,GaussDB(DWS)中的B-Tree支持多字段索引,且最多可在32个字段上创建索引。 部分索引 建立在一个表的子集上的索引,这种索引方式只包含满足条件表达式的元组。 表达式索引 索引建立在一个函数或者从表中一个或多个属性计算出来的表达式上。表达式索引只
修改索引只调用索引名提示索引不存在 问题现象 创建分区表索引HR_staffS_p1_index1,不指定索引分区的名字。 1 CREATE INDEX HR_staffS_p1_index1 ON HR.staffS_p1 (staff_ID) LOCAL; 创建分区索引HR
dx2的索引数据是不同的; 在同一张表的同一个列上建立的多个普通索引的索引数据是相同的; 因此当执行同一个查询时,使用idx1和idx2查询出的结果是不同的。 使用约束 通过上面的例子,索引使用满足如下条件时: 在同一个表的同一个列上建立了多个gin索引; 这些gin索引使用了不同的parser(即分隔符不同);
一个索引可以定义在表中的多个属性上。目前,GaussDB(DWS)中的B-Tree支持多字段索引,且最多可在32个字段上创建索引。 部分索引 建立在一个表的子集上的索引,这种索引方式只包含满足条件表达式的元组。 表达式索引 索引建立在一个函数或者从表中一个或多个属性计算出来的表达式上。表达式索引只
表和索引 搜索表 创建索引 索引使用约束 父主题: 全文检索
为了清晰,举例中没有调用coalesce函数在两个字段中查找包含NULL的行。 以上例子均在没有索引的情况下进行查询。对于大多数应用程序来说,这个方法很慢。因此除了偶尔的特定搜索,文本搜索在实际使用中通常需要创建索引。 父主题: 表和索引