Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да намерите последния ден от месеца за дадена дата в MySQL

Проблем:

Искате да получите датата на последния ден от месеца за дата в база данни на 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“.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да търсите JSON данни в MySQL?

  2. Тип MySQL ENUM спрямо таблици за присъединяване

  3. еквивалент на gene_series() в MySQL

  4. Покриване на Mysql срещу композитен срещу индекс на колона

  5. 12 Най-добри практики за сигурност на MySQL/MariaDB за Linux