Проблем:
Бихте искали да получите годината от колона дата/дата и час в база данни на MySQL.
Пример:
Нашата база данни има таблица с име conference с данни в колоните id , name и start_datetime .
| id | име | start_datetime |
|---|---|---|
| 1 | Светът на социалните медии | 20.02.2019 14:15:34 |
| 2 | Mobile World 2017 | 31.08.2017 20:10:14 |
| 3 | Електронно шоу | 2018-04-03 10:05:45 |
| 4 | Tech Asia 2019 | 2019-01-01 12:47:54 |
За всяка конференция нека да разберем нейното име и година. Ще трябва да получим само годината от start_datetime колона.
Решение:
Ще използваме YEAR() функция. Ето заявката, която бихте написали:
SELECT name,
YEAR(start_datetime)
AS year_of_conference
FROM conference;
Ето резултата от заявката:
| name | година_на_конференцията |
|---|---|
| Светът на социалните медии | 2019 |
| Mobile World 2017 | 2017 |
| Електронно шоу | 2018 |
| Tech Asia 2019 | 2019 |
Дискусия:
Използвайте YEAR() функция за извличане на стойността на годината от колона дата/дата/час в MySQL. Тази функция приема само един аргумент – дата или дата и час. Това може да бъде името на колона дата/време/време или израз, връщащ един от тези типове данни. (В нашия пример това е колоната start_datetime от типа данни за дата.)
YEAR() връща годината като цяло число от 1000 до 9999. „Светът на социалните медии“ началната дата на конференцията е '2019-02-20 14:15:34' , така че YEAR() върна '2019' за този запис.