Mogelijk bent u geïnteresseerd in de Eerste programmeerregel .
Een geclusterde index omvat altijd alle rijen. Het kan worden besteld door z
, maar het bevat nog steeds alle andere kolommen op bladniveau.
Dit is de reden waarom SQL Server soms de voorkeur geeft aan een geclusterde scan boven een indexzoekopdracht. Wanneer u een indexzoekopdracht uitvoert, moet u deze opvolgen met een bladwijzerzoekopdracht naar de geclusterde index om kolommen op te halen die niet in de index staan.
Wanneer u een geclusterde indexscan doet, vindt u per definitie alle kolommen. Dat betekent dat er geen bladwijzers nodig zijn.
Wanneer SQL Server veel rijen verwacht, probeert het de bladwijzerzoekopdrachten te vermijden. Dit is een beproefde keuze. Niet-geclusterde indexzoekacties worden routinematig verslagen door geclusterde indexscans.
U kunt dit voor uw geval testen door te forceren met de with (index(IX_YourIndex))
vraaghint
.