Poniższe dwie funkcje pozwalają nam pobrać nazwę miesiąca z daty w MySQL.
MONTHNAME() Funkcja
MONTHNAME() funkcja została zaprojektowana specjalnie do zwracania nazwy miesiąca z daty. Aby to zrobić, przekaż datę do funkcji podczas jej wywoływania. Zwracana jest pełna nazwa miesiąca.
Przykład:
SELECT MONTHNAME('2030-10-25'); Wynik:
October
Język używany w nazwie miesiąca jest kontrolowany przez wartość lc_time_names zmienna systemowa. Zobacz MONTHNAME() Przykłady na przykład, jak to wpływa na dane wyjściowe. Zobacz także Jak ustawić ustawienia regionalne dla bieżącego połączenia w MySQL, aby uzyskać więcej informacji.
DATE_FORMAT() Funkcja
DATE_FORMAT() funkcja zwraca podaną datę w określonym formacie. Aby użyć tej funkcji, określ datę i żądany format podczas wywoływania funkcji.
Możesz zwrócić pełną nazwę miesiąca, przekazując %M jako ciąg formatu.
Przykład:
SELECT DATE_FORMAT('2030-12-25', '%M'); Wynik:
December
Język używany w nazwie miesiąca jest kontrolowany przez wartość lc_time_names zmienna systemowa.
Krótka nazwa miesiąca
Przekazywanie %b do DATE_FORMAT() funkcja zwraca skróconą nazwę miesiąca.
Przykład:
SELECT DATE_FORMAT('2030-12-25', '%b'); Wynik:
Dec
Można to zreplikować za pomocą MONTHNAME() funkcja za pomocą LEFT() aby pobrać pierwsze 3 znaki z nazwy miesiąca.
Przykład:
SELECT LEFT(MONTHNAME('2030-12-25'), 3); Wynik:
Dec
Tę samą koncepcję można osiągnąć, konwertując wynik MONTHNAME() do trzyznakowego typu danych z funkcją taką jak CAST() .
Jednak chociaż to podejście działa w en_US , może nie zawsze działać zgodnie z oczekiwaniami w innych językach. Na przykład:
SET lc_time_names = 'th_TH';
SELECT
DATE_FORMAT('2030-12-25', '%b') AS "Short 1",
LEFT(MONTHNAME('2030-12-25'), 3) AS "Short 2",
MONTHNAME('2030-12-25') AS "Full"; Wynik:
+----------+-----------+-----------------------+ | Short 1 | Short 2 | Full | +----------+-----------+-----------------------+ | ธ.ค. | ธัน | ธันวาคม | +----------+-----------+-----------------------+