如何在使用Order by子句时强制执行索引?
问题描述:
where
子句和order by
子句不同,那么甲骨文没有识别索引如何在使用Order by子句时强制执行索引?
INNER JOIN ORG_ACCOUNTING_PERIODS p
ON p.ORG_ROADMARK = c.ORG_ROADMARK
AND p.ACCOUNTING_PERIOD = c.SERVICE_PERIOD
where (c.ORG_ROADMARK =:roadMark)
and c.ORG_ROADMARK = c.move_road
ORDER BY EVENT_DATETIME;
答
使用索引和顺序时通过,以便通过应分集的where子句,因为索引直接施加到where子句。
所以添加--->
INNER JOIN ORG_ACCOUNTING_PERIODS p ON p.ORG_ROADMARK = c.ORG_ROADMARK AND p.ACCOUNTING_PERIOD = c.SERVICE_PERIOD
where (c.ORG_ROADMARK =:roadMark)
and c.ORG_ROADMARK = c.move_road
and c.EVENT_DATETIME between :eventFrom AND :eventTo
ORDER BY EVENT_DATETIME ;
create index --> `CREATE INDEX "CARHIRE_EVENTS_IX" ON "CARHIRE_EVENTS" ("EVENT_DATETIME", "MOVE_ROAD", "ORG_ROADMARK") ;`
我们就需要知道很多有关你的表,索引,统计等方面提供帮助。 –