Widziałem przykłady, w których zapytania są sortowane według liczby i zajmują najwyższy wiersz, ale w tym przypadku może być wiele "najczęstszych" wartości, więc mogę chcieć zwrócić więcej niż jeden wynik.jak wybrać najczęściej pojawiające się wartości?
W tym przypadku chcę, aby znaleźć najczęściej występujących nazwisk w tabeli użytkowników, oto co mam do tej pory:
select last_name from users group by last_name having max(count(*));
Niestety z tego zapytania pojawia się błąd, że moja funkcja max jest zagnieżdżony zbyt głęboko.
Świetna odpowiedź! Dzięki – InkHeart
Wierzę, że ta odpowiedź jest niepoprawna: gęsta ranga. gęsta ranga nadal zwróciłaby obie liczby u góry, po prostu nie pomijałaby kolejnych numerów rang. numer_wiersza nie zawierał jednocześnie obu liczb. –
@MikeS Dzięki! Masz rację i nie wiem, gdzie byłem z moim umysłem, kiedy to napisałem. 'rank' i' dense_rank' mogą zwracać tę samą liczbę dla wielu wierszy, jeśli są "równe" zgodnie z określonym sortowaniem. Poprawiłem tekst. – GolezTrol