Flyway——Oracle创建前缀索引

文章目录

前言

索引有助于提升数据库表的查询速率,极大的缩减查询的时间。但索引的创建需要考虑的因素很多,并非索引越多越好!

创建一般索引的语法

oracle创建一般的常见索引,语法如下所示:

摘录于:努力的小羽儿------oracle创建索引

sql 复制代码
--创建索引
CREATE [UNIQUE] INDEX <索引名>
ON <基本表名> (<列名> [<次序>],[,<列名> [<次序>]]...); 
--说明:
--UNIQUE:规定索引的每一个索引值只对应于表中的唯一记录。
--<次序>:建立索引时指定列名的索引表是ASC(升序)或DESC(降序)。
 
--索引的创建语句(简洁)
create index 索引名 on 表名(列名);
 
--标准语法
create index 索引名 on 表名(列名) tablespace 表空间名;
 
--tablespace 表空间名 可以省略,以下皆省略
 
--创建唯一索引
create unique index 索引名 on 表名(列名);
 
--复合索引/组合索引
create index 索引名 on 表名(列名1, 列名2, 列名3, ...);
 
--反向键索引
create index 索引名 on 表名(列名) reverse;
 
--删除索引
drop index 索引名 on 表名;
 
--降序索引​
​CREATE INDEX 索引名 ON 表名(列名 desc) ;  --升序asc
 
--查看某个表中的所有索引
select * from all_indexes where table_name = '表名'
 
--查看某个表中建立了索引的所有列
​select * from all_ind_columns where table_name = '表名'

前缀索引

前缀索引这个词在Mysql中出现的比较多,在oracle中也能创建类似的索引。

索引的创建,会让数据库额外维护一个对应的索引B+树。

如果索引的字段很大,将导致创建索引B+树的大小越大。

如果又想对大数据字段加索引,又想不占用太多的内存,则可以采取前缀索引

创建可执行脚本,案例如下所示:

sql 复制代码
-- 增加 IMES_INDICATOR_CALCLOG 前缀索引
DECLARE
  CNT INTEGER;
BEGIN
   select COUNT(0)
    INTO CNT
    from user_indexes
    where table_name = upper('IMES_INDICATOR_CALCLOG')
    and index_name = upper('logid_index');

  IF CNT = 0 THEN
    EXECUTE IMMEDIATE 'create index logid_index on IMES_INDICATOR_CALCLOG left(logid,12)';
  END IF;
END;
/

IMES_INDICATOR_CALCLOG中的logid是一个uuid的数据,增加前缀索引,则使用到了LEFT函数。

相关推荐
BullSmall16 小时前
PostgreSQL 14 pg_dumpall 完整备份指南
数据库·postgresql·oracle
宇宙第一小趴菜21 小时前
三、Oracle 核心原理
数据库·oracle
龙仔72521 小时前
SQL Server OS_Core 数据库全自动备份【完整笔记·可直接复用】
数据库·笔记·oracle
Cloud云卷云舒2 天前
云卷云舒:从Oracle/MySQL迁移到HaishanDB:迁移评估工具核心技术拆解
mysql·oracle·ai-native·haishandb·信创数据库替换
段一凡-华北理工大学2 天前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化
oradh2 天前
Oracle XTTS实现跨版本迁移和升级(Oracle 11g单库升级至19C RAC集群)
数据库·oracle·11g升级19c·xtts跨版本迁移和升级
会编程的土豆2 天前
数据库范式
数据库·oracle
—Miss. Z—2 天前
计算机二级MySQL——简单应用题(存储过程&存储函数)
数据库·oracle·php
NineData2 天前
Oracle 卡住时先看阻塞源,ChatDBA 会先把锁链路理出来
数据库·oracle·ninedata·锁故障·锁等待·chatdba·锁阻塞
踏月的造梦星球3 天前
达梦数据库执行计划与性能分析入门:EXPLAIN、AUTOTRACE 与 ET
服务器·数据库·oracle