Oracle
 sql >> Database >  >> RDS >> Oracle

In una singola query SQL quanti indici può utilizzare la query da una singola tabella?

È possibile che tutti e tre possano essere utilizzati. Non è particolarmente probabile che Oracle utilizzi tutti e tre, o che l'utilizzo di tutti e tre sarebbe vantaggioso, ma è possibile.

Il modo più semplice per Oracle di utilizzare tutti e tre gli indici sarebbe se parlassimo di indici bitmap, che sono progettati per essere combinati, ma sono davvero appropriati solo in situazioni di data warehouse/DSS, non nei sistemi OLTP. È anche possibile che Oracle possa eseguire una conversione al volo di un indice b-tree "standard" in un indice bitmap per eseguire la stessa combinazione di indici in un sistema OLTP, ma in genere non è molto efficiente.

La maggior parte delle volte, se stai tentando di creare indici appropriati per ottimizzare una query in un sistema OLTP, vorrai creare un singolo indice composito anziché creare indici a colonna singola separati se ci sono più colonne che vuoi filtrare / unisciti.