GreatSQL社区

搜索

reddey

如何高效建立ORACLE的索引列

reddey 已有 62 次阅读2024-11-10 09:14 |系统分类:运维实战

今天在墨天轮社区 看到一个题目,对于以下SQL,如何建立索引比较高效? 假设满足条件的记录有很多。


看到这个题目时,我的第一反应是在条件列或SELECT列上建立索引,但实际上不是这样的。请看如下解析

对于过滤条件返回大量数据的情况下,单纯通过过滤条件的索引很难有效过滤数据,还会造成回表开销过大;

因此需要将排序列加入到索引最后一列中,这样优化器会根据查询出的结果直接获得排序并积累到需要的20行记录后就停止,因此排序列在最后的索引建立方式比较高效。

答案如下图所示


评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 立即注册

合作电话:010-64087828

社区邮箱:greatsql@greatdb.com

社区公众号
社区小助手
QQ群
GMT+8, 2024-11-21 14:23 , Processed in 0.016191 second(s), 9 queries , Redis On.
返回顶部