Trong MySQL, MONTHNAME()
hàm trả về tên tháng từ một ngày.
Ví dụ:nếu bạn cung cấp ngày 2021-12-07 , MONTHNAME()
chức năng sẽ trả về Tháng 12 .
Cú pháp
Cú pháp như sau:
MONTHNAME(date)
Nơi date
là giá trị ngày mà bạn muốn trả về tên tháng.
Ví dụ
Đây là một ví dụ để chứng minh.
SELECT MONTHNAME('2021-12-07') AS 'Result';
Kết quả:
+----------+ | Result | +----------+ | December | +----------+
Một ví dụ về cơ sở dữ liệu
Trong ví dụ này, tôi trích xuất tên tháng từ một cột khi chạy truy vấn đối với cơ sở dữ liệu.
USE sakila; SELECT payment_date AS 'Date/Time', MONTHNAME(payment_date) AS 'Month' FROM payment WHERE payment_id = 1;
Kết quả:
+---------------------+-------+ | Date/Time | Month | +---------------------+-------+ | 2005-05-25 11:30:37 | May | +---------------------+-------+
Ngày / Giờ hiện tại
Dưới đây là một ví dụ về việc trích xuất tên tháng từ ngày và giờ hiện tại (được trả về bằng cách sử dụng NOW()
chức năng).
SELECT NOW(), MONTHNAME(NOW());
Kết quả:
+---------------------+------------------+ | NOW() | MONTHNAME(NOW()) | +---------------------+------------------+ | 2018-06-29 15:19:48 | June | +---------------------+------------------+
Một cách khác để làm điều này là sử dụng CURDATE()
, chỉ trả về ngày (chứ không trả về thời gian).
SELECT CURDATE(), MONTHNAME(CURDATE());
Kết quả:
+------------+----------------------+ | CURDATE() | MONTHNAME(CURDATE()) | +------------+----------------------+ | 2018-06-29 | June | +------------+----------------------+
Ngôn ngữ
Ngôn ngữ được sử dụng cho tên tháng được kiểm soát bởi lc_time_names
biến hệ thống. Dưới đây là ví dụ về việc thay đổi giá trị của biến đó, sau đó chạy MONTHNAME()
một lần nữa.
SET lc_time_names = 'es_CL'; SELECT MONTHNAME('2021-12-07') AS 'Result';
Kết quả:
+-----------+ | Result | +-----------+ | diciembre | +-----------+
Trong ví dụ này, tôi đã thay đổi lc_time_names
thành es_CL
có nghĩa là tiếng Tây Ban Nha - Chile .