Ao usar o MySQL, você pode usar o
LAST_DAY()
função para retornar o último dia de um determinado mês. Você pode fornecer a data atual ou outra data especificada (por exemplo, uma data de uma coluna em um banco de dados) e
LAST_DAY()
retornará o último dia do mês para essa data. Sintaxe
A sintaxe fica assim:
LAST_DAY(data)
Onde
date
é a data para a qual você deseja que o último dia seja devolvido. Exemplo 1 – Uso básico
Aqui está um exemplo para demonstrar como funciona.
SELECT LAST_DAY('2021-01-01');
Resultado:
+------------------------+| LAST_DAY('2021-01-01') |+------------------------+| 31/01/2021 |+------------------------+
Portanto, ele usa a data que fornecemos como argumento e retorna o último dia desse mês.
Exemplo 2 – Anos bissextos
Como você pode esperar, é inteligente o suficiente para lidar com anos bissextos.
Ano não bissexto
SELECT LAST_DAY('2021-02-01');
Resultado:
+------------------------+| LAST_DAY('2021-02-01') |+------------------------+| 28/02/2021 |+------------------------+
Ano bissexto
SELECT LAST_DAY('2020-02-01');
Resultado:
+------------------------+| LAST_DAY('2020-02-01') |+------------------------+| 29-02-2020 |+------------------------+
Exemplo 3 – Valores de data e hora
Você também pode fornecer uma data e hora valor.
SELECT LAST_DAY('2021-02-01 23:59:15');
Resultado:
+---------------------------------+| LAST_DAY('2021-02-01 23:59:15') |+--------------------------------- +| 28/02/2021 |+---------------------------------+
Exemplo 4 – Valores inválidos
Se você fornecer uma data inválida, um valor nulo será retornado.
SELECT LAST_DAY('2021-02-32');
Resultado:
+------------------------+| LAST_DAY('2021-02-32') |+------------------------+| NULL |+------------------------+1 linha no conjunto, 1 aviso (0,00 seg)
Exemplo 5 – Um exemplo de banco de dados
Aqui está um exemplo dessa função sendo usada em uma consulta de banco de dados.
USE sakila;SELECT payment_date AS 'Data/Hora', LAST_DAY(payment_date) AS 'Último dia do mês'FROM paymentWHERE payment_id =1;
Resultado:
+---------------------+-------------------+| Data/Hora | Último dia do mês |+---------------------+-------------------+| 25-05-2005 11:30:37 | 31/05/2005 |+---------------------+-------------------+