sql - 我应该索引已经是复合索引一部分的个别列吗?

标签 sql database oracle indexing database-performance

我在我的表中有一个跨 4 列的复合唯一索引和一个具有性能问题的查询,该查询分别过滤其中的 2 列。也许是个愚蠢的问题,但我是否也应该为各个列编制索引以提高性能?感谢您的帮助!

最佳答案

我回答这个问题是因为乔的回答不正确。

Oracle 9 引入了一种新型索引扫描,称为跳过扫描。这允许将索引用于非前导列。详细信息在 documentation 中解释。 .

的确,在大多数数据库中,在大多数情况下,索引是从左到右使用的。然而,Oracle 的跳过扫描机制是一个异常(exception),并且是对其他数据库中索引算法的增强。

关于sql - 我应该索引已经是复合索引一部分的个别列吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39601687/

相关文章:

javascript - 如何使用 mongo/mongoose 通过 _id 以外的字段查找文档

Cassandra 数据克隆到另一个 cassandra 数据库(不同服务器)

sql - append 到假脱机文件 Oracle

sql - 在 SQL Server 中使用带有 SUM 函数的 CASE 语句

php - 在数据库中保存javascript代码

php - php 中的数据库连接与 linux 主机上的 MS Access

sql - 在 SQL 查询中插入日志语句

database - Oracle 序列

sql - 字符串上的 Postgres 模数运算符

sql - 形参 “@mode” 未声明为 OUTPUT 参数,而是在请求的输出中传递的实参