Problem
Załóżmy, że mamy tabelę zawierającą informacje o pracownikach, jak pokazano poniżej:
Celem jest zamówienie powyższych danych na podstawie miesiąca rozpoczęcia. Jest to opisane w kolumnie start_date.
Jak możemy podejść do takiego problemu?
Rozwiązanie 1 - grupa według kolumny (ekstrakt)
Pierwszą metodą, którą możemy użyć, jest funkcja Extract () w SQL. Pozwala nam wyodrębniać określone części z obiektu daty.
Dlatego możemy użyć funkcji Extract () do wyodrębnienia miesiąca daty i zgrupowania danych z wynikowej wartości.
Przykładowe zapytanie jest takie, jak pokazano:
WYBIERAĆPowyższe powinno pogrupować dane według miesięcy i zwrócić datę maksymalną w każdym miesiącu grupa:
Rozwiązanie 2 - Format daty
Możesz także użyć funkcji date_format do grupowania danych według nazwy miesiąca. Przykładem jest jak pokazano:
Wybierz date_format („miesiąc”, start_date) jako start_month,Powinno to pogrupować dane na podstawie nazw miesięcy i zastosować funkcję liczby.
Dziękuje za przeczytanie!!