SQL Server ma do wyboru trzy algorytmy, gdy musi połączyć dwie tabele. Łączenie zagnieżdżonych pętli, łączenie mieszające i łączenie scalane sortowania. Który wybiera, opiera się na kosztorysach. W tym przypadku uznał, że na podstawie dostępnych informacji, sortowanie-scalanie jest właściwym wyborem.
W planach wykonania SQL Server operacja Sort-Merge jest dzielona na dwa operatory, Sort i Merge-Join, ponieważ operacja sortowania może nie być konieczna, na przykład jeśli dane są już posortowane.
Więcej informacji na temat złączeń znajdziesz tutaj:http://sqlity.net/pl/1146/a-do-do-do-dni-wprowadzenie/ Artykuł o Sort-Merg-Join jest tutaj:http://sqlity.net/en/1480/a-join-a-day-the-sort-merge-join/
Aby Twoje zapytanie było szybsze, najpierw przyjrzę się indeksom. W zapytaniu znajduje się kilka skanowań indeksu klastrowego. Jeśli możesz zastąpić kilka z nich zabiegami, najprawdopodobniej będziesz lepszy. Sprawdź również, czy szacunki, które generuje SQL Server, są zgodne z rzeczywistą liczbą wierszy w rzeczywistym planie wykonania. Jeśli są daleko, SQL Server często dokonuje złych wyborów. Tak więc zapewnienie lepszych statystyk może również pomóc w wydajności zapytań.