1. 简介
在 MySQL 中取月份可以使用内置函数 MONTH()。 MONTH(expr) 函数返回日期或者日期时间表达式expr的月份,取值范围为 1~12。
SELECT MONTH('2022-09-01');
-- 返回 9
SELECT MONTH('2022-09-30');
-- 返回 9
2. MONTH() 函数的使用方法
2.1 给定日期字符串
如果要给定日期字符串获取其月份,可以使用 DATE 或者 STR_TO_DATE 函数获取日期类型,然后使用 MONTH 函数获取月份。以下是使用 DATE 函数的示例:
SELECT MONTH(DATE('2022-09-01'));
-- 返回 9
SELECT MONTH(DATE('2022-09-30'));
-- 返回 9
以下是使用 STR_TO_DATE 函数的示例:
SELECT MONTH(STR_TO_DATE('2022-09-01', '%Y-%m-%d'));
-- 返回 9
SELECT MONTH(STR_TO_DATE('2022-09-30', '%Y-%m-%d'));
-- 返回 9
2.2 给定时间戳或日期时间
如果要给定一个时间戳或者日期时间获取其月份,可以直接使用 MONTH() 函数。以下是示例:
SELECT MONTH('2022-09-01 12:34:56');
-- 返回 9
SELECT MONTH('2022-09-30 12:34:56');
-- 返回 9
3. MONTH() 函数的返回值
MONTH 函数的返回值为整数,表示输入的日期或者日期时间的月份,取值范围为 1~12。
4. 注意事项
要注意 MONTH() 函数的输入格式,如果输入格式不正确,会返回 NULL 值:
SELECT MONTH('2022-09-01 12:34');
-- 返回 NULL
需要确保输入日期字符串或者日期时间的格式正确,否则会导致结果不准确。