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 .