sql >> Base de Datos >  >> RDS >> Mysql

Cómo encontrar el último día del mes para una fecha determinada en MySQL

Problema:

Le gustaría obtener la fecha del último día del mes para una fecha en una base de datos MySQL.

Ejemplo:

Nuestra base de datos tiene una tabla llamada car_sales con datos en las columnas id , make , model y sale_date .

id hacer modelo fecha_de_venta
1 Ford Ka 2019-02-01
2 Toyota Yaris 2019-08-15
3 Opel Corsa 2019-06-22

Para cada automóvil, obtengamos la marca y el modelo y el último día del mes en que se vendió el automóvil. (El último día del mes es uno de los términos de la liquidación de la transacción).

Solución:

Usaremos el LAST_DAY() función. Esta es la consulta que escribirías:

SELECT make,
       model,
       LAST_DAY(sale_date) 
         AS  sale_last_day
FROM car_sales;

Este es el resultado de la consulta:

hacer modelo oferta_último_día
Ford Ka 2019-02-28
Toyota Yaris 2019-08-31
Opel Corsa 2019-06-30

Discusión:

Use la función LAST_DAY() si desea recuperar el último día del mes para una fecha en MySQL. Esta función toma un argumento:la fecha, ya sea como una expresión que devuelve un valor de fecha/fechahora/marca de tiempo o el nombre de una columna de fecha/fechahora/marca de tiempo. En nuestro ejemplo, usamos sale_date columna. Es de la fecha tipo de datos.

LAST_DATE() devuelve el último día del mes de una fecha determinada. En nuestro ejemplo, el último día del mes en que el Ford Ka se vendió es '2019-02-28'; el auto se vendió el '2019-02-01', y el último día de febrero de 2019 fue '2019-02-28'.