Puoi usare il MONTH()
funzione in MySQL per restituire il mese da una data.
In questo contesto, il mese è un valore compreso tra 1 e 12 (o 0 per le date con una parte del mese zero).
Ad esempio, se fornisci una data di 07-10-2018 , il MONTH()
funzione restituirà 10 .
Sintassi
La sintassi è questa:
MONTH(date)
Dove date
è il valore della data da cui vuoi restituire il mese.
Esempio
Ecco un esempio da dimostrare.
SELECT MONTH('2020-12-18') AS 'Result';
Risultato:
+--------+ | Result | +--------+ | 12 | +--------+
Se la parte del mese ha uno zero iniziale, lo zero iniziale viene omesso dal risultato. Esempio:
SELECT MONTH('2020-07-18') AS 'Result';
Risultato:
+--------+ | Result | +--------+ | 7 | +--------+
Un esempio di database
In questo esempio, estraggo la parte del mese da una colonna durante l'esecuzione di una query su un database.
USE sakila; SELECT payment_date AS 'Date/Time', MONTH(payment_date) AS 'Month' FROM payment WHERE payment_id = 1;
Risultato:
+---------------------+-------+ | Date/Time | Month | +---------------------+-------+ | 2005-05-25 11:30:37 | 5 | +---------------------+-------+
Data/ora corrente
Ecco un esempio di estrazione della parte del mese dalla data e dall'ora correnti (che viene restituita utilizzando NOW()
funzione).
SELECT NOW(), MONTH(NOW());
Risultato:
+---------------------+--------------+ | NOW() | MONTH(NOW()) | +---------------------+--------------+ | 2018-06-29 14:44:38 | 6 | +---------------------+--------------+
Un altro modo per farlo è usare CURDATE()
funzione, che restituisce solo la data (ma non l'ora).
SELECT CURDATE(), MONTH(CURDATE());
Risultato:
+------------+------------------+ | CURDATE() | MONTH(CURDATE()) | +------------+------------------+ | 2018-06-29 | 6 | +------------+------------------+