SQL中的日期格式转换

时间:2009-04-07 00:04:11

标签: sql sql-server sql-server-2005

我想将日期格式从01/09转换为2009年1月,09/03年至2003年9月等。这可能在SQL中吗?如果有相同的API,请告诉我。

4 个答案:

答案 0 :(得分:1)

如果表中有DateTime列,则可能

SELECT DATENAME(MM, YOUR_DATE_COLUMN) + ' ' + CAST(YEAR(YOUR_DATE_COLUMN) AS VARCHAR(4)) AS [Month YYYY] 

http://www.sql-server-helper.com/tips/date-formats.aspx

答案 1 :(得分:0)

你应该看here

这很简单。

答案 2 :(得分:0)

您应该先将其转换为日期时间。然后,您可以在以后阅读时轻松应用任何格式化。

declare @d varchar(10);
set @d = '01/09'

select 
  --cast(@d as datetime) as d1, --syntax error converting char string
  cast('20' + right(@d, 2) + '-' + left(@d, 2) + '-01' as datetime) as d2

然后使用rm的答案将其转换为mmm yyyy

答案 3 :(得分:0)

select datename(month, GETDATE()) + ' '+ substring(convert(varchar, GETDATE(), 100),8,4)

image1