sql >> Databáze >  >> RDS >> Oracle

Kolik indexů může dotaz použít v jediném dotazu SQL z jedné tabulky?

Je možné, že by se daly použít všechny tři. Není příliš pravděpodobné, že by Oracle použil všechny tři, nebo že by použití všech tří bylo přínosné, ale je to možné.

Nejjednodušší způsob, jak Oracle používat všechny tři indexy, by byl, kdybychom mluvili o bitmapových indexech, které jsou navrženy tak, aby je bylo možné kombinovat, ale jsou skutečně vhodné pouze v situacích datových skladů/DSS, nikoli v systémech OLTP. Je také možné, že by Oracle mohl provést za běhu konverzi „standardního“ indexu b-stromu na index bitmapy, aby provedl stejnou kombinaci indexů v systému OLTP, ale to obecně není příliš efektivní.

Pokud se pokoušíte vytvořit vhodné indexy pro vyladění dotazu v systému OLTP, většinou budete chtít vytvořit jeden složený index, spíše než vytvářet samostatné indexy s jedním sloupcem, pokud chcete filtrovat více sloupců. / připojte se.




  1. Zploštění tabulky o 1 řádku do tabulky párů klíč-hodnota

  2. Aktualizace serializovaného pole v mysql (bez zrušení serializace?)

  3. Python psycopg2 copy_from() pro načtení dat vyvolá chybu pro hodnoty null integer:DataError:neplatná vstupní syntaxe pro celé číslo:

  4. Zdá se, že objednávka mysql pomocí unie nefunguje