首页 > 解决方案 > SQL 格式('MMMM')在 SQL Server 2008 中不起作用

问题描述

我有这个查询

select 
    format([time], 'MMMM') as 'Month', 
    count([time]) as 'Application Usage', 
    count([time]) as 'Application Usage' 
from 
    UserLogs UL 
where 
    [time] >= Dateadd(Month, Datediff(Month, 0, DATEADD(m, -6, current_timestamp)), 0) 
    and Ul.UserId = @user 
group by
    format([time],'MMMM')

但是,我使用 SQL Server 2008 迁移到服务器并收到此错误:

“格式”不是可识别的内置函数名称

我可以用什么来替换这个格式功能?

标签: sqlsql-servertsqlsql-server-2008

解决方案


SQL Server 2008 不支持format(). 这里有一种互惠关系——微软不再支持 SQL Server 2008。

无论如何,只需使用datename()

select datename(month, [time]) as Month

推荐阅读