webForumDet fria alternativet
Logga in / Bli medlem

Oracle index

Databaser & SQL

1 svar · 326 visningar · startad av Krille29

Medlem sedan dec. 200218 inlägg
Trådstart#1

Hej!

Jag läser i en gammal manual till Oracle 8 följande och får några tankegångar i mitt huvud:

”Indexes improve the performance of queries that select a small percentage of rows from a table. As a general guideline, you should create indexes on tables that are often queried for less than 2% or 4% of the table's rows. This value may be higher in situations where all data can be retrieved from an index, or where the indexed columns can be used for joining to other tables.”

Varför är rekommendationen ”less than 2%”. Varför spelar det någon roll hur många procent av tabellens rader som väljs ut?

Varför skulle procentsatsen kunna tillåtas vara högre ”where all data can be retrieved from an index”, vad spelar det för roll?

Tacksam för svar!

Mvh,

Kristian

Medlem sedan sep. 20062 inlägg
#2

Kanske går långsammare att returnera många rader när databashanteraren använder index än att göra en full scan.

388 ms totalt · 4 externa anrop · v20260731065814-full.50d4b5bd
127 ms — deklarationer (db)
128 ms — hämta statistik (db)
131 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)