在 SQL Server 中,我想从 Month dd、yyyy 格式的 DateTime 列中选择一个日期。
我目前正在使用以下代码:
SELECT CONVERT(VARCHAR(12), DateColumnHere, 107) 'Formatted Date'
返回:
Feb 15, 2013
有没有办法获得完整的月份名称,例如:
February 15, 2013
谢谢!
在 SQL Server 中,我想从 Month dd、yyyy 格式的 DateTime 列中选择一个日期。
我目前正在使用以下代码:
SELECT CONVERT(VARCHAR(12), DateColumnHere, 107) 'Formatted Date'
返回:
Feb 15, 2013
有没有办法获得完整的月份名称,例如:
February 15, 2013
谢谢!
这是一个包含大量格式和少量 SQL 日期黑客的网站:
这是他们对您的格式的查询(月 dd,yyy):
SELECT DATENAME(MM, GETDATE()) + RIGHT(CONVERT(VARCHAR(12), GETDATE(), 107), 9) AS [Month DD, YYYY]
SQL Server 的日期格式数量有限,但您可以使用该DATENAME
函数来连接这些日期格式:
SELECT DATENAME(MM, GETDATE()) + ' ' +
DATENAME(DD, GETDATE()) + ', ' +
DATENAME(YYYY, GETDATE())
AS 'Formatted Date'
但是,通常最好将日期保留为日期格式而不是转换为字符串,并且仅在格式化功能更丰富的显示层(网站、报表、应用程序等)中转换为字符串。另外,如果您转换为字符串,您将失去进行日期数学、排序等的能力。
SELECT DATENAME(MM, GETDATE()) + RIGHT(CONVERT(VARCHAR(12), GETDATE(), 107), 9) AS [Month DD, YYYY]
试试这个:
SELECT STUFF(CONVERT(VARCHAR(12), GETDATE(), 107), 1,3,DATENAME(month,GETDATE()))