Проблем:
Искате да получите годината от поле за дата в база данни на SQL Server.
Пример:
Нашата база данни има таблица с име Children
с данни в колоните Id
, FirstName
, LastName
и BirthDate
.
Id | Име | Фамилия | Дата на раждане |
---|---|---|---|
1 | Джейн | Смит | 20.06.2018 |
2 | Гари | Кафяв | 2010-02-02 |
3 | Лора | Адамс | 05.11.2014 |
Нека вземем годината от рождената дата на всяко дете.
Решение:
Ще използваме YEAR()
функция. Ето заявката, която бихте написали:
SELECT FirstName, LastName, YEAR(BirthDate) AS BirthYear FROM Children;
Ето резултата от заявката:
First Name | Фамилия | Година на раждане |
---|---|---|
Джейн | Смит | 2018 |
Гари | Кафяв | 2010 |
Лора | Адамс | 2014 |
Дискусия:
Използвайте YEAR()
на SQL Server функция, ако искате да получите частта за годината от дата. Тази функция приема само един аргумент – дата, в един от типовете данни за дата и час или дата. (В нашия пример колоната BirthDate
е дата тип данни). Аргументът може да бъде име на колона или израз. (В нашия пример аргументът е BirthDate
колона.)
YEAR()
функцията връща цяло число. За Джейн Смит , връща цялото число 2018 от рождената дата '2018-06-20'
.