Al usar MySQL, puede usar el LAST_DAY()
función para devolver el último día de un mes dado.
Puede proporcionar la fecha actual o puede proporcionar otra fecha específica (por ejemplo, una fecha de una columna en una base de datos) y LAST_DAY()
devolverá el último día del mes para esa fecha.
Sintaxis
La sintaxis es así:
LAST_DAY(date)
Donde date
es la fecha para la que desea que se devuelva el último día.
Ejemplo 1:uso básico
Aquí hay un ejemplo para demostrar cómo funciona.
SELECT LAST_DAY('2021-01-01');
Resultado:
+------------------------+ | LAST_DAY('2021-01-01') | +------------------------+ | 2021-01-31 | +------------------------+
Por lo tanto, toma la fecha que proporcionamos como argumento y luego devuelve el último día de ese mes.
Ejemplo 2:años bisiestos
Como era de esperar, es lo suficientemente inteligente como para poder manejar los años bisiestos.
Año no bisiesto
SELECT LAST_DAY('2021-02-01');
Resultado:
+------------------------+ | LAST_DAY('2021-02-01') | +------------------------+ | 2021-02-28 | +------------------------+
Año bisiesto
SELECT LAST_DAY('2020-02-01');
Resultado:
+------------------------+ | LAST_DAY('2020-02-01') | +------------------------+ | 2020-02-29 | +------------------------+
Ejemplo 3:valores de fecha y hora
También puede proporcionar una fecha y hora valor.
SELECT LAST_DAY('2021-02-01 23:59:15');
Resultado:
+---------------------------------+ | LAST_DAY('2021-02-01 23:59:15') | +---------------------------------+ | 2021-02-28 | +---------------------------------+
Ejemplo 4:valores no válidos
Si proporciona una fecha no válida, se devolverá un valor nulo.
SELECT LAST_DAY('2021-02-32');
Resultado:
+------------------------+ | LAST_DAY('2021-02-32') | +------------------------+ | NULL | +------------------------+ 1 row in set, 1 warning (0.00 sec)
Ejemplo 5:un ejemplo de base de datos
Aquí hay un ejemplo de esta función que se usa en una consulta de base de datos.
USE sakila; SELECT payment_date AS 'Date/Time', LAST_DAY(payment_date) AS 'Last day of month' FROM payment WHERE payment_id = 1;
Resultado:
+---------------------+-------------------+ | Date/Time | Last day of month | +---------------------+-------------------+ | 2005-05-25 11:30:37 | 2005-05-31 | +---------------------+-------------------+