2
请问如何让这个查询的执行速度比目前更快?如何使这个Oracle select语句执行得更快?
T2.ADI is indexed on TABLE2
T1.ADI is indexed on TABLE1
T1.RC AND T1.BEG_DT_TM is composite indexed on TABLE1
我还能做些什么来使其更快吗?
SELECT T1.ASI, T1.RC, T1.BEG_DT_TM
FROM TABLE1 T1
INNER JOIN TABLE2 T2
ON T2.ADI = T1.ADI
AND T2.END_DT_TM > T1.BEG_DT_TM
AND T2.BEG_DT_TM <= T1.END_DT_TM
WHERE T1.RC IN (12345, 56764460, 49862, 375723)
AND T1.BEG_DT_TM >=
AND T1.BEG_DT_TM <=
AND T1.END_DT_TM >=
AND T1.END_DT_TM <=
我假设你运行了一个解释计划来查看大部分时间都花在哪里。你能告诉我们吗?那么 - 统计数据是否是最新的?在任何情况下,连接条件都会使查询变慢,而不管其他任何事情。 – mathguy
谢谢@mathguy我在 –
以上附加了解释计划,这是什么“AND T1.BEG_DT_TM> =”?缺少条件的右侧。 “更快”是什么意思?多久时间?表和结果集中有多少行? – OldProgrammer