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'.