V MySQL, MONTHNAME()
funkce vrací název měsíce z data.
Pokud například zadáte datum 2021-12-07 , MONTHNAME()
funkce vrátí prosinec .
Syntaxe
Syntaxe vypadá takto:
MONTHNAME(date)
Kde date
je hodnota data, ze které chcete vrátit název měsíce.
Příklad
Zde je příklad k demonstraci.
SELECT MONTHNAME('2021-12-07') AS 'Result';
Výsledek:
+----------+ | Result | +----------+ | December | +----------+
Příklad databáze
V tomto příkladu extrahuji název měsíce ze sloupce při spuštění dotazu na databázi.
USE sakila; SELECT payment_date AS 'Date/Time', MONTHNAME(payment_date) AS 'Month' FROM payment WHERE payment_id = 1;
Výsledek:
+---------------------+-------+ | Date/Time | Month | +---------------------+-------+ | 2005-05-25 11:30:37 | May | +---------------------+-------+
Aktuální datum/čas
Zde je příklad extrahování názvu měsíce z aktuálního data a času (který je vrácen pomocí NOW()
funkce).
SELECT NOW(), MONTHNAME(NOW());
Výsledek:
+---------------------+------------------+ | NOW() | MONTHNAME(NOW()) | +---------------------+------------------+ | 2018-06-29 15:19:48 | June | +---------------------+------------------+
Dalším způsobem, jak toho dosáhnout, je použít CURDATE()
funkce, která vrací pouze datum (ale ne čas).
SELECT CURDATE(), MONTHNAME(CURDATE());
Výsledek:
+------------+----------------------+ | CURDATE() | MONTHNAME(CURDATE()) | +------------+----------------------+ | 2018-06-29 | June | +------------+----------------------+
Místní prostředí
Jazyk použitý pro název měsíce je řízen pomocí lc_time_names
systémová proměnná. Zde je příklad změny hodnoty této proměnné a následného spuštění MONTHNAME()
znovu.
SET lc_time_names = 'es_CL'; SELECT MONTHNAME('2021-12-07') AS 'Result';
Výsledek:
+-----------+ | Result | +-----------+ | diciembre | +-----------+
V tomto příkladu jsem změnil lc_time_names
do es_CL
což znamená španělština – Chile .