如何在SQL中获得月份的3个字母缩写

moh*_*han 9 sql-server

如何在SQL中获取3个字母的月份.

在SQL表中插入数据:

2016-01-07 09:38:58.310
Run Code Online (Sandbox Code Playgroud)

我只需要在3个字母中输入月份,如下所示:

Jan
Run Code Online (Sandbox Code Playgroud)

Nit*_*rpe 13

试试这个(我假设你使用的是Sql Server).

Select Convert(char(3), GetDate(), 0)
Run Code Online (Sandbox Code Playgroud)

如果您需要月份的全名,请尝试

Select Datename(month, GetDate())
Run Code Online (Sandbox Code Playgroud)


mar*_*c_s 13

假设您使用的是SQL Server 2012或更高版本,则可以使用以下FORMAT功能:

SELECT FORMAT([Date], 'MMM', 'en-US')
Run Code Online (Sandbox Code Playgroud)

根据需要调整区域设置.

因为你在SQL Server 2008上,所以我会使用

SELECT LEFT(DATENAME(MONTH, [Date]), 3)
Run Code Online (Sandbox Code Playgroud)

  • 你更快:)"SELECT FORMAT(@d,'MMM','en-US');`[demo](https://data.stackexchange.com/stackoverflow/query/420643)我会在里面添加语言环境案件 (3认同)
  • @NitinVarpe:你最有可能运行SSMS 2012,但是对于2012之前的****数据库引擎.数据库**引擎**版本是决定因素 - 而不是您正在使用的前端GUI工具的哪个版本.使用`SELECT @@ VERSION`检查数据库引擎版本 (2认同)