Проблем:
Искате да получите датата на последния ден от месеца за дата в база данни на MySQL.
Пример:
Нашата база данни има таблица с име car_sales
с данни в колоните id
, make
, model
и sale_date
.
id | направи | модел | дата_на_продажба |
---|---|---|---|
1 | Форд | Ка | 01.02.2019 |
2 | Тойота | Ярис | 15.08.2019 |
3 | Opel | Corsa | 22.06.2019 |
За всяка кола нека вземем марката и модела и последния ден от месеца, в който е продаден автомобилът. (Последният ден от месеца е един от условията за сетълмент на транзакцията.)
Решение:
Ще използваме LAST_DAY()
функция. Ето заявката, която бихте написали:
SELECT make, model, LAST_DAY(sale_date) AS sale_last_day FROM car_sales;
Ето резултата от заявката:
make | модел | sale_last_day |
---|---|---|
Форд | Ка | 28.02.2019 |
Тойота | Ярис | 31.08.2019 |
Opel | Corsa | 30.06.2019 |
Дискусия:
Използвайте функцията LAST_DAY(), ако искате да извлечете последния ден от месеца за дата в MySQL. Тази функция приема един аргумент – датата, или като израз, връщащ стойност за дата/дата и час, или името на колона дата/време/време. В нашия пример използваме sale_date
колона. Това е на дата тип данни.
LAST_DATE() връща последния ден от месеца на дадена дата. В нашия пример последният ден от месеца, когато Ford Ka е продаден е „2019-02-28“; колата беше продадена на „2019-02-01“, а последният ден на февруари 2019 г. беше „2019-02-28“.