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

ORACLE Indsæt ydeevne på indekserede tabeller

Dette er faktisk den samme slags spørgsmål som:

Dette skyldes, at når du opbevarer dine dagligvarer, vil du gerne have dem på en pæn, velkendt position, så det er nemmere at finde dem bagefter.

En database skal gøre det samme.

  • Hvis du har en tabel uden indeks, kan den blot tilføje nye data i slutningen af ​​tabellen.
  • Hvis du har et indeks, skal databasen udføre mere arbejde. Det vil sandsynligvis stadig placere posten i slutningen af ​​tabellen, men derudover vil den opdatere sit indeks for at sikre, at hvis du vil finde posten bagefter, vil den finde den hurtigere end uden indeks.

Dette betyder også, at tilføjelse af flere indekser vil sænke inserts yderligere.

Det skal være klart, at du kun vil oprette et indeks, hvis du også vil bruge det efterfølgende. Hvis du kun opretter et indeks, og du ikke bruger det bagefter til at forbedre ydeevnen af ​​en forespørgsel, er der ingen grund til at have indekset, da det kun vil bremse indsættelserne og ikke forbedre nogen forespørgsel.



  1. Hvordan indsætter/opdaterer man større datastørrelser i Oracle-tabellerne?

  2. AES_DECRYPT() og AES_ENCRYPT() i MySQL med polske tegn

  3. PostgreSQL. Models.py omdannes ikke til databaseskema

  4. Giv prioritet til ORDER BY over en GROUP BY i MySQL uden underforespørgsel