I MySQL er MONTHNAME()
funktion returnerer månedens navn fra en dato.
For eksempel, hvis du angiver en dato 2021-12-07 , MONTHNAME()
funktion vil returnere december .
Syntaks
Syntaksen ser sådan ud:
MONTHNAME(date)
Hvor date
er den datoværdi, du vil have månedsnavnet returneret fra.
Eksempel
Her er et eksempel til at demonstrere.
SELECT MONTHNAME('2021-12-07') AS 'Result';
Resultat:
+----------+ | Result | +----------+ | December | +----------+
Et databaseeksempel
I dette eksempel udtrækker jeg månedsnavnet fra en kolonne, når jeg kører en forespørgsel mod en database.
USE sakila; SELECT payment_date AS 'Date/Time', MONTHNAME(payment_date) AS 'Month' FROM payment WHERE payment_id = 1;
Resultat:
+---------------------+-------+ | Date/Time | Month | +---------------------+-------+ | 2005-05-25 11:30:37 | May | +---------------------+-------+
Aktuel dato/klokkeslæt
Her er et eksempel på udtrækning af månedsnavnet fra den aktuelle dato og klokkeslæt (som returneres ved hjælp af NOW()
funktion).
SELECT NOW(), MONTHNAME(NOW());
Resultat:
+---------------------+------------------+ | NOW() | MONTHNAME(NOW()) | +---------------------+------------------+ | 2018-06-29 15:19:48 | June | +---------------------+------------------+
En anden måde at gøre dette på er at bruge CURDATE()
funktion, som kun returnerer datoen (men ikke klokkeslættet).
SELECT CURDATE(), MONTHNAME(CURDATE());
Resultat:
+------------+----------------------+ | CURDATE() | MONTHNAME(CURDATE()) | +------------+----------------------+ | 2018-06-29 | June | +------------+----------------------+
Lokal
Sproget, der bruges til månedsnavnet, styres af lc_time_names
systemvariabel. Her er et eksempel på at ændre værdien af denne variabel og derefter køre MONTHNAME()
igen.
SET lc_time_names = 'es_CL'; SELECT MONTHNAME('2021-12-07') AS 'Result';
Resultat:
+-----------+ | Result | +-----------+ | diciembre | +-----------+
I dette eksempel ændrede jeg lc_time_names
til es_CL
hvilket betyder Spansk – Chile .