Você pode usar o
MONTH()
função no MySQL para retornar o mês de uma data. Nesse contexto, o mês é um valor entre 1 e 12 (ou 0 para datas com parte de mês zero).
Por exemplo, se você fornecer uma data de 2018-10-07 , o
MONTH()
a função retornará 10 . Sintaxe
A sintaxe fica assim:
MONTH(date)
Onde
date
é o valor de data do qual você deseja que o mês seja retornado. Exemplo
Aqui está um exemplo para demonstrar.
SELECT MONTH('2020-12-18') AS 'Result';
Resultado:
+--------+ | Result | +--------+ | 12 | +--------+
Se a parte do mês tiver um zero à esquerda, o zero à esquerda será omitido do resultado. Exemplo:
SELECT MONTH('2020-07-18') AS 'Result';
Resultado:
+--------+ | Result | +--------+ | 7 | +--------+
Um exemplo de banco de dados
Neste exemplo, extraio a parte do mês de uma coluna ao executar uma consulta em um banco de dados.
USE sakila; SELECT payment_date AS 'Date/Time', MONTH(payment_date) AS 'Month' FROM payment WHERE payment_id = 1;
Resultado:
+---------------------+-------+ | Date/Time | Month | +---------------------+-------+ | 2005-05-25 11:30:37 | 5 | +---------------------+-------+
Data/hora atual
Aqui está um exemplo de extração da parte do mês da data e hora atuais (que é retornada usando o
NOW()
função). SELECT NOW(), MONTH(NOW());
Resultado:
+---------------------+--------------+ | NOW() | MONTH(NOW()) | +---------------------+--------------+ | 2018-06-29 14:44:38 | 6 | +---------------------+--------------+
Outra maneira de fazer isso é usar o
CURDATE()
função, que retorna apenas a data (mas não a hora). SELECT CURDATE(), MONTH(CURDATE());
Resultado:
+------------+------------------+ | CURDATE() | MONTH(CURDATE()) | +------------+------------------+ | 2018-06-29 | 6 | +------------+------------------+