You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL如何将datetime类型转换为完整月份名加年份的格式

问题解决:SQL Server获取完整英文月份+年份格式

你当前使用的CONVERT样式代码106的输出规则就是返回3位缩写月份,因此无法直接截取得到完整月份名,可使用以下两种方案实现需求:

方案1:SQL Server 2012及以上版本(最简写法)

直接使用FORMAT函数,其中格式符MMMM代表完整英文月份名,yyyy代表4位年份:

UPDATE TABLE1
SET AccountingPeriod = FORMAT(GETDATE(), 'MMMM yyyy')

如果需要处理的不是当前时间,而是表内存储的datetime字段,把GETDATE()替换为对应字段名即可。

方案2:全版本兼容写法

使用DATENAME函数分别获取月份和年份后拼接,兼容所有SQL Server版本:

UPDATE TABLE1
SET AccountingPeriod = DATENAME(MONTH, GETDATE()) + ' ' + DATENAME(YEAR, GETDATE())

以上两种方案执行后都可以得到January 2021这类符合要求的输出。

内容的提问来源于stack exchange,提问作者Harsh Bilodiya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 09:15:03