SQL Server Month()函数

在本教程中,将学习如何使用SQL Server MONTH()函数从日期中提取月份。

SQL Server MONTH()函数简介

MONTH()函数返回一个整数值,它表示指定日期的月份。

以下是MONTH()函数的语法:

MONTH(input_date)

MONTH()函数接受一个参数,该参数可以是文字日期值或可以解析为:TIMEDATESMALLDATETIMEDATETIMEDATETIME2DATETIMEOFFSET值的表达式。

MONTH()函数返回与以下DATEPART()函数相同的值:

DATEPART(month,input_date)

SQL Server MONTH()函数示例

1. MONTH()函数使用文字日期值

此示例使用MONTH()函数从2020-12-13日期值中提取月份值:

SELECT MONTH('2020-12-13') [month];

执行上面查询语句,得到以下结果:

month
-----------
12

(1 行受影响)

2. MONTH()函数使用日期值只包含时间数据

如果日期值仅包含时间部分,则MONTH()函数将返回1

SELECT 
 MONTH('12:30:33') [month];

执行上面查询语句,得到以下结果:

month
-----------
1

(1 行受影响)

3. MONTH()函数与表列示例

下面将使用示例数据库中的sales.orderssales.order_items进行演示。

订单表结构

此示例使用MONTH()函数从shipped_date列中的值中提取月份数据。它使用SUM()函数和GROUP BY子句返回2018年按月分组后总销售额:

SELECT MONTH(shipped_date) [month], 
    SUM(list_price * quantity) gross_sales
FROM sales.orders o
    INNER JOIN sales.order_items i ON i.order_id = o.order_id
WHERE shipped_date IS NOT NULL
    AND YEAR(shipped_date) = 2017
GROUP BY MONTH(shipped_date)
ORDER BY [month];

执行上面查询语句,得到以下结果:

查询结果

在本教程中,学习了如何使用SQL Server MONTH()函数从指定日期提取月份。


上一篇: SQL Server日期函数 下一篇: SQL Server字符串函数