sql >> Database teknologi >  >> RDS >> Sqlserver

Hvorfor bruge INCLUDE-sætningen, når du opretter et indeks?

Hvis kolonnen ikke er i WHERE/JOIN/GROUP BY/ORDER BY , men kun i kolonnelisten i SELECT klausul er, hvor du bruger INCLUDE .

INCLUDE klausul tilføjer dataene på det laveste/blade niveau i stedet for i indekstræet. Dette gør indekset mindre, fordi det ikke er en del af træet

INCLUDE columns er ikke nøglekolonner i indekset, så de er ikke ordnet. Det betyder, at det ikke er rigtig brugbart til prædikater, sortering osv. som jeg nævnte ovenfor. Det kan dog være nyttigt, hvis du har et resterende opslag i nogle få rækker fra nøglekolonnen(e)

Endnu en MSDN-artikel med et bearbejdet eksempel



  1. Forskellige planer for identiske servere

  2. Datointerval overlappende kontrolbegrænsning

  3. Hvordan henter man et sæt tegn ved hjælp af SUBSTRING i SQL?

  4. Hurtigt script, der returnerer alle egenskaber fra SERVERPROPERTY() i SQL Server 2017/2019