In MySQL, il MONTHNAME()
la funzione restituisce il nome del mese da una data.
Ad esempio, se fornisci una data di 07-12-2021 , il MONTHNAME()
funzione restituirà dicembre .
Sintassi
La sintassi è questa:
MONTHNAME(date)
Dove date
è il valore della data da cui vuoi che venga restituito il nome del mese.
Esempio
Ecco un esempio da dimostrare.
SELECT MONTHNAME('2021-12-07') AS 'Result';
Risultato:
+----------+ | Result | +----------+ | December | +----------+
Un esempio di database
In questo esempio, estraggo il nome del mese da una colonna durante l'esecuzione di una query su un database.
USE sakila; SELECT payment_date AS 'Date/Time', MONTHNAME(payment_date) AS 'Month' FROM payment WHERE payment_id = 1;
Risultato:
+---------------------+-------+ | Date/Time | Month | +---------------------+-------+ | 2005-05-25 11:30:37 | May | +---------------------+-------+
Data/ora corrente
Ecco un esempio di estrazione del nome del mese dalla data e dall'ora correnti (che viene restituita utilizzando NOW()
funzione).
SELECT NOW(), MONTHNAME(NOW());
Risultato:
+---------------------+------------------+ | NOW() | MONTHNAME(NOW()) | +---------------------+------------------+ | 2018-06-29 15:19:48 | June | +---------------------+------------------+
Un altro modo per farlo è usare CURDATE()
funzione, che restituisce solo la data (ma non l'ora).
SELECT CURDATE(), MONTHNAME(CURDATE());
Risultato:
+------------+----------------------+ | CURDATE() | MONTHNAME(CURDATE()) | +------------+----------------------+ | 2018-06-29 | June | +------------+----------------------+
Locale
La lingua utilizzata per il nome del mese è controllata da lc_time_names
variabile di sistema. Ecco un esempio di modifica del valore di quella variabile e quindi dell'esecuzione di MONTHNAME()
di nuovo.
SET lc_time_names = 'es_CL'; SELECT MONTHNAME('2021-12-07') AS 'Result';
Risultato:
+-----------+ | Result | +-----------+ | diciembre | +-----------+
In questo esempio, ho modificato lc_time_names
a es_CL
che significa Spagnolo – Cile .