在T-SQL中使用月份名称显示日期时间

Yon*_*ing 3 t-sql sql-server

在表中有一个日期类型的字段.该字段的格式为mm/dd/yy.有没有办法将它转换为dd-Month name-yy?

最好的祝福,

Ada*_*Dev 7

没有任何麻烦,您可以使用CONVERT获取"dd MONTHNAME yyyy"格式:

SELECT CONVERT(VARCHAR, GETDATE(), 106)
Run Code Online (Sandbox Code Playgroud)

例如"2010年1月25日"

如果你想要你的确切格式,你可能需要一些手动摆弄,如:

SELECT CAST(DAY(GETDATE()) AS VARCHAR) +  '-' + LEFT(DATENAME(mm, GETDATE()), 3) + '-' + RIGHT(CAST(YEAR(GETDATE()) AS VARCHAR), 2)
Run Code Online (Sandbox Code Playgroud)

例如"25-Jan-10"

更新:
实际上,实现这一目标的更简单方法是:

SELECT REPLACE(CONVERT(VARCHAR, GETDATE(), 6), ' ', '-')
Run Code Online (Sandbox Code Playgroud)

例如"25-Jan-10"