【发布时间】:2018-03-27 09:06:06
【问题描述】:
我在一个大表上运行一个查询,我期待大量的返回行。 不幸的是,我需要按 2 列对结果进行排序,这使得查询很慢。
我为这些特定列添加了一个索引,但我想知道订单方向是否会有所不同。 一列是降序排列,一列是升序排列。
感谢和最良好的祝愿, e.
【问题讨论】:
-
hi Ele - 索引告诉数据库需要获取文件系统上的哪些块 - 这样可以加快数据检索速度。我不认为索引会加速以后的处理(例如排序数据)。我认为 order by 的方向根本不会产生任何影响。显然 order by 子句在检索到所有数据之前无法执行其操作(从文件系统中脱落的最后一行可能是您想要查看的第一行)。在返回任何数据之前,您会看到延迟
-
嗨@ChristianPalmer,我阅读了很多文章,建议创建一个与您的order by 参数相同的索引,因为索引将以正确的方式对数据进行排序。查看一个简单示例的执行计划强调了论文,例如use-the-index-luke.com/de/sql/sortieren-gruppieren/…
标签: oracle indexing sql-order-by