MariaDB
 sql >> база данни >  >> RDS >> MariaDB

Как MONTHNAME() работи в MariaDB

В MariaDB, MONTHNAME() е вградена функция за дата и час, която връща името на името на месеца за дадена дата.

Той приема един аргумент, който е датата, от която искате да извлечете името на месеца.

Синтаксис

Синтаксисът е така:

MONTHNAME(date) 

Където date е датата, от която да получите името на месеца.

Пример

Ето един пример:

SELECT MONTHNAME('2041-11-14'); 

Резултат:

+------------------------+| MONTHNAME('2041-11-14') |+-------------------------+| ноември |+------------------------+

Език

Езикът, използван за името на месеца, се контролира от стойността на lc_time_names системна променлива.

Ето пример, който показва как това се отразява на резултата:

SET lc_time_names = 'es_AR';
SELECT MONTHNAME('2041-11-14'); 

Резултат:

+------------------------+| MONTHNAME('2041-11-14') |+-------------------------+| новиембре |+------------------------+

И превключване обратно към en_US , което е по подразбиране:

SET lc_time_names = 'en_US';
SELECT MONTHNAME('2041-11-14'); 

Резултат:

+------------------------+| MONTHNAME('2041-11-14') |+-------------------------+| ноември |+------------------------+

Ето списък с локали, поддържани от MariaDB, и ето как да върнете свой собствен списък с налични локали.

И ето публикация, обясняваща как да проверите стойността на вашите lc_time_names системна променлива.

Стойности за дата и час

Работи и със стойности за дата и час:

SELECT MONTHNAME('2041-01-15 10:30:45'); 

Резултат:

+---------------------------------+| MONTHNAME('2041-01-15 10:30:45') |+-------------------------------- -+| януари |+----------------------------------+

Нула месеца

Наличието на нулев месец в датата връща null :

SELECT MONTHNAME('2030-00-00'); 

Резултат:

+------------------------+| MONTHNAME('2030-00-00') |+-------------------------+| NULL |+------------------------+

Числови дати

Възможно е също да предавате дати като число, стига да има смисъл като дата.

Пример

SELECT MONTHNAME(20201208); 

Резултат:

+---------------------+| MONTHNAME(20201208) |+---------------------+| декември |+---------------------+

Годините с две цифри са добри:

SELECT MONTHNAME(201208); 

Резултат:

+------------------+| ИМЕ НА МЕСЕЦ(201208) |+------------------+| декември |+------------------+

Но трябва да има смисъл като среща. Ето какво се случва, ако увелича частта от деня до невалиден ден:

SELECT MONTHNAME(201299); 

Резултат:

+------------------+| ИМЕ НА МЕСЕЦ(201299) |+------------------+| NULL |+-------------------+

Други ограничители

Можете да използвате други разделители за датата. MariaDB е доста прощаваща, когато става въпрос за разделители на дати. Ето няколко валидни примера:

SELECT 
    MONTHNAME('2027/08/19'),
    MONTHNAME('2027,08,19'),
    MONTHNAME('2027:08:19'),
    MONTHNAME('2027;08!19'); 

Резултат (с помощта на вертикален изход):

MONTHNAME('2027/08/19'):AugustMONTHNAME('2027,08,19'):AugustMONTHNAME('2027:08:19'):AugustMONTHNAME('2027;08!19'):Август 

Текуща дата

Можем да предадем NOW() като аргумент за дата, за да използвате текущата дата:

SELECT 
    NOW(),
    MONTHNAME(NOW()); 

Резултат:

+---------------------+----------------+| СЕГА() | ИМЕ НА МЕСЕЦ(СЕГА()) |+---------------------+-----------------+| 14.05.2021 10:11:16 | май |+---------------------+----------------+

Невалидни аргументи

Когато се подаде невалиден аргумент, MONTHNAME() връща null :

SELECT MONTHNAME('Wrong!'); 

Резултат:

+---------------------+| MONTHNAME('Грешно!') |+---------------------+| NULL |+---------------------+

Липсващ аргумент

Извикване на MONTHNAME() с грешен брой аргументи или без подаване на аргументи, води до грешка:

SELECT MONTHNAME(); 

Резултат:

ГРЕШКА 1582 (42000):Неправилен брой на параметрите в извикването на естествената функция „MONTHNAME“

И още един пример:

SELECT MONTHNAME('2030-01-25', '2045-05-08'); 

Резултат:

ГРЕШКА 1582 (42000):Неправилен брой на параметрите в извикването на естествената функция „MONTHNAME“

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как работи LENGTH() в MariaDB

  2. Управление на SSL ключове и криптиране на MySQL данни при пренасяне

  3. Как работи ROUND() в MariaDB

  4. Съображения за сигурност за внедряване на MariaDB в хибридна облачна среда

  5. 4 начина за проверка на типа данни на колона в MariaDB