Проблем:
Искате да получите месеца от колона дата/дата и час в база данни на MySQL.
Пример:
Нашата база данни има таблица с име apartment_rental с данни в колоните id , address , floor и start_date .
| id | адрес | етаж | начална_дата |
|---|---|---|---|
| 1 | 700 Oak Street | 2 | 20.03.2019 |
| 2 | Главна улица 295 | 3 | 31.05.2019 |
| 3 | Държавен път 506 | 1 | 03.01.2019 |
| 4 | 3949 Път 31 | 1 | 01.02.2019 |
За всеки наличен апартамент вземете адреса, етажа и месеца, когато е наличен. Вземете само месеца от start_date колона.
Решение:
Ще използваме MONTH() функция. Ето заявката, която бихте написали:
SELECT address,
floor,
MONTH(start_date)
AS start_month
FROM apartment_rental;
Ето резултата от заявката:
| адрес | етаж | начален_месец |
|---|---|---|
| 700 Oak Street | 2 | 3 |
| Главна улица 295 | 3 | 5 |
| Държавен път 506 | 1 | 1 |
| 3949 Път 31 | 1 | 2 |
Дискусия:
Използвайте MONTH() функция за извличане на месец от колона дата/дата/час в MySQL. Тази функция приема само един аргумент – или израз, който връща стойност за дата/време/време, или името на колона за дата/дата и час. (В нашия пример използваме start_date колона с дата тип данни).
MONTH() връща месеца като цяло число от 1 до 12 (1 е януари, а 12 е декември). В нашия пример, апартаментът на 700 Oak Street ще започне отдаването под наем през месец 3, защото началната му дата е '2019-03-20'