SQL Server中的日期时间格式

sk7*_*730 1 sql-server-2008

任何人都可以指导我获得以下日期格式吗?

 18th Mar 2014
Run Code Online (Sandbox Code Playgroud)

我确实看到支持其他日期格式.但是,对于我来说,需要约会.

Joa*_*son 5

也许不是最简单的方法,但这应该做到;

SELECT CAST(DATEPART(d, dt) AS NVARCHAR(2)) + 
  CASE DATEPART(d, dt)  WHEN 1  THEN 'st' WHEN 2 THEN 'nd'
                        WHEN 3  THEN 'rd' WHEN 21 THEN 'st'
                        WHEN 22 THEN 'nd' WHEN 23 THEN 'rd' 
                        WHEN 31 THEN 'st' ELSE 'th' END +
  CAST(SUBSTRING(CONVERT(NVARCHAR(256), dt, 106), 3, 256) AS NVARCHAR(256))
AS [myDate]
FROM test;
Run Code Online (Sandbox Code Playgroud)

一个要测试的SQLfiddle.