Witam wszystkich,
Mam pytanie które mnie dręczy mianowicie mam dwa zapytania które wypisują 3 rekordy z bazy i sprawdzam je wykorzystując query execution plan z non-clustered index i bez indeksów. I teraz otrzymuje dla zapytania:
- pierwszego zapytania bez indeksów : Query cost 42%
- pierwszego zapytania z non-clustered index : Query cost 28%
Tą część rozumiem dlaczego wyszły takie koszta.
Teraz dla zapytania drugiego:
- bez indeksu: Query cost 58%
- z non-clustered index: Query cost: 72%
Dlaczego w tym drugim przypadku koszt zapytania bez indeksu jest mniejszy(58%) niż z indeksem? Oto
Czy stosowanie Joinów tak wpływa na koszta zapytania?
SELECT TOP 3 CENA FROM PRODUKT ORDER BY CENA DESC
SELECT DISTINCT A.CENA
FROM PRODUKT A
JOIN PRODUKT B ON A.CENA<=B.CENA
GROUP BY A.CENA
HAVING COUNT(*)<=3
ODRER BY A.CENA DESC
Będę wdzięczny za uzasadnienie mojego dylematu.