我有以下SQL查詢:甲骨文連接優化
select dres.colA,
dres.colP,
dres.ID,
dre.ID,
dre.colED,
dre.VID,
vpp.VID,
vpp.colDESC
from table1 dres
left join table2 dre on dres.ID = dre.ID
left join table3 vpp on vpp.VID = dre.VID
where dre.START_TIME >= date '2017-01-01';
你有任何建議,查詢如何更好地工作(或應該)? 喜歡的東西:
...where dres.ID in (select * from table2
where VID in (select * from table3))....
對於連接優化,請確保您在連接涉及的列上有適當的索引。對於基於子查詢的in子句的使用應該比連接(通常) – scaisEdge
的性能低,並且該索引應該幫助數百萬行?我不這麼認爲......只會導致嵌套循環 – Thomas
需要行數並解釋計劃 – Thomas