W MySQL funkcja MONTHNAME()
funkcja zwraca nazwę miesiąca od daty.
Na przykład, jeśli podasz datę 2021-12-07 , MONTHNAME()
funkcja zwróci grudzień .
Składnia
Składnia wygląda tak:
MONTHNAME(date)
Gdzie date
to wartość daty, z której ma być zwrócona nazwa miesiąca.
Przykład
Oto przykład do zademonstrowania.
SELECT MONTHNAME('2021-12-07') AS 'Result';
Wynik:
+----------+ | Result | +----------+ | December | +----------+
Przykład bazy danych
W tym przykładzie wyodrębniam nazwę miesiąca z kolumny podczas uruchamiania zapytania w bazie danych.
USE sakila; SELECT payment_date AS 'Date/Time', MONTHNAME(payment_date) AS 'Month' FROM payment WHERE payment_id = 1;
Wynik:
+---------------------+-------+ | Date/Time | Month | +---------------------+-------+ | 2005-05-25 11:30:37 | May | +---------------------+-------+
Aktualna data/godzina
Oto przykład wyodrębnienia nazwy miesiąca z bieżącej daty i godziny (która jest zwracana za pomocą funkcji NOW()
funkcja).
SELECT NOW(), MONTHNAME(NOW());
Wynik:
+---------------------+------------------+ | NOW() | MONTHNAME(NOW()) | +---------------------+------------------+ | 2018-06-29 15:19:48 | June | +---------------------+------------------+
Innym sposobem na to jest użycie CURDATE()
funkcja, która zwraca tylko datę (ale nie godzinę).
SELECT CURDATE(), MONTHNAME(CURDATE());
Wynik:
+------------+----------------------+ | CURDATE() | MONTHNAME(CURDATE()) | +------------+----------------------+ | 2018-06-29 | June | +------------+----------------------+
Lokal
Język używany do nazwy miesiąca jest kontrolowany przez lc_time_names
zmienna systemowa. Oto przykład zmiany wartości tej zmiennej, a następnie uruchomienia MONTHNAME()
ponownie.
SET lc_time_names = 'es_CL'; SELECT MONTHNAME('2021-12-07') AS 'Result';
Wynik:
+-----------+ | Result | +-----------+ | diciembre | +-----------+
W tym przykładzie zmieniłem lc_time_names
do es_CL
co oznacza hiszpański – Chile .