Problem:
Chcesz uzyskać rok z pola daty w bazie danych SQL Server.
Przykład:
Nasza baza danych zawiera tabelę o nazwie Children
z danymi w kolumnach Id
, FirstName
, LastName
i BirthDate
.
Identyfikator | Imię | Nazwisko | Data urodzenia |
---|---|---|---|
1 | Jana | Kowalski | 2018-06-20 |
2 | Gary | Brązowy | 02.02.2010 |
3 | Lora | Adama | 05.11.2014 |
Znajdźmy rok od daty urodzin każdego dziecka.
Rozwiązanie:
Użyjemy YEAR()
funkcjonować. Oto zapytanie, które możesz napisać:
SELECT FirstName, LastName, YEAR(BirthDate) AS BirthYear FROM Children;
Oto wynik zapytania:
Imię | Nazwisko | Rok urodzenia |
---|---|---|
Jana | Kowalski | 2018 |
Gary | Brązowy | 2010 |
Lora | Adama | 2014 |
Dyskusja:
Użyj funkcji YEAR()
SQL Servera funkcja, jeśli chcesz pobrać część roku z daty. Ta funkcja przyjmuje tylko jeden argument — datę, w jednym z typów danych typu data i godzina lub data. (W naszym przykładzie kolumna BirthDate
to data typ danych). Argumentem może być nazwa kolumny lub wyrażenie. (W naszym przykładzie argumentem jest BirthDate
kolumna.)
YEAR()
funkcja zwraca liczbę całkowitą. Dla Jane Smith , zwraca liczbę całkowitą 2018 od daty urodzenia '2018-06-20'
.