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

MONTHNAME() Примери – MySQL

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

Например, ако посочите дата 2021-12-07 , MONTHNAME() функцията ще върне декември .

Синтаксис

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

MONTHNAME(date)

Където date е стойността на датата, от която искате да се върне името на месеца.

Пример

Ето пример за демонстрация.

SELECT MONTHNAME('2021-12-07') AS 'Result';

Резултат:

+----------+
| Result   |
+----------+
| December |
+----------+

Пример за база данни

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

USE sakila;
SELECT
  payment_date AS 'Date/Time',
  MONTHNAME(payment_date) AS 'Month'
FROM payment
WHERE payment_id = 1;

Резултат:

+---------------------+-------+
| Date/Time           | Month |
+---------------------+-------+
| 2005-05-25 11:30:37 | May   |
+---------------------+-------+

Текуща дата/час

Ето пример за извличане на името на месеца от текущата дата и час (които се връщат с помощта на NOW() функция).

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

Резултат:

+---------------------+------------------+
| NOW()               | MONTHNAME(NOW()) |
+---------------------+------------------+
| 2018-06-29 15:19:48 | June             |
+---------------------+------------------+

Друг начин да направите това е да използвате CURDATE() функция, която връща само датата (но не и часа).

SELECT 
    CURDATE(),
    MONTHNAME(CURDATE());    

Резултат:

+------------+----------------------+
| CURDATE()  | MONTHNAME(CURDATE()) |
+------------+----------------------+
| 2018-06-29 | June                 |
+------------+----------------------+

Locale

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

SET lc_time_names = 'es_CL';
SELECT MONTHNAME('2021-12-07') AS 'Result';

Резултат:

+-----------+
| Result    |
+-----------+
| diciembre |
+-----------+

В този пример промених lc_time_names към es_CL което означава испански – Чили .


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL разделя низ, разделен със запетая, във времева таблица

  2. MySQL преобразува изхода timediff във формат ден, час, минута, секунда

  3. Как бързо да преименувам MySQL база данни (промяна на името на схемата)?

  4. Възможно ли е ГРУПИРАНЕ НА множество колони с MySQL?

  5. Дублиране, копиране или архивиране на таблици в MySQL, MariaDB, Oracle, PostgreSQL, DB2 и SQLite със Създаване на таблица като SQL