Pytania w tym artykule pojawiły się podczas szkolenia Tworzenie zapytań do baz danych Microsoft SQL Server (Querying Microsoft SQL Server) realizowanego w dniach 18-22.04.2016r.
Radosław Różyński
DEVELOPER AND TRAINER
Jaka jest różnica między poleceniem Group By a Distinct?
W zasadzie żadna. Distinct jest również poleceniem powodującym grupowanie rekordów względem wyświetlanej listy kolumn oraz wyświetlenie unikatowych grup. Dokładnie to samo wykonuje polecenie Group by. Jest jawnym wskazaniem po jakich kolumnach następuje grupowanie. Najczęściej polecenie Group by jest wykorzystywane podczas wykonywania agregacji. Polecenie Distinct jest stosowane podczas wyświetlenia unikatowych grup bez agregacji. Gdy zestawimy obok siebie oba polecenia w tzw. planie zapytania, oba powinny zwrócić ten sam wynik i czas. Dla przykładu zapytanie:
select country from tsql2014.sales.customers
group by country
select distinct country from tsql2014.sales.customers
Aby włączyć obsługę czytnika ekranu, naciśnij skrót Ctrl+Alt+Z.. Aby uzyskać informacje o skrótach klawiszowych, naciśnij skrót Ctrl+ukośnik..