我正在与 SQL Server 的日期检索作斗争。谁能帮我?我想运行一个查询,它将返回格式为DD-Month-YYYY
. 我尝试了几次谷歌搜索,但还没有得到任何帮助。
这是我的做法:
SELECT OrderDate
FROM tblOrders;
它返回2010-01-23 00:00:00.000
。我想检索:23-January-2010
我正在与 SQL Server 的日期检索作斗争。谁能帮我?我想运行一个查询,它将返回格式为DD-Month-YYYY
. 我尝试了几次谷歌搜索,但还没有得到任何帮助。
这是我的做法:
SELECT OrderDate
FROM tblOrders;
它返回2010-01-23 00:00:00.000
。我想检索:23-January-2010
日期是日期是日期。它闻起来和任何其他名字一样甜。
你问的是格式化。
您可以使用将日期转换为字符串convert
select convert(varchar(20), OrderDate,106) from orders
如果你想获得完整的月份名称,那么你可以使用datename
select datename(day, orderdate)+'-'
+ datename(month, orderdate)+'-'
+ datename(year,orderdate)
from orders
如果它的 sql server 2012 您可以选择 FORMAT() 函数,该函数与之前的版本相比提供了简单的格式化。
SELECT FORMAT(Orderdate,'D','en-gb') as Formatted_Orderdate from tblOrders
尝试这个:
SELECT CAST(DAY(SYSDATETIME()) AS VARCHAR(2)) + '-' + DATENAME(MM, SYSDATETIME()) + '-' + RIGHT(CAST(YEAR(SYSDATETIME()) AS VARCHAR(4)), 2) AS [DD Month YY]
我正在使用 SQL Server 2008 R2 Express
几天前我回答了同样的问题
SELECT CAST(DAY(GETDATE()) AS VARCHAR(2)) + ' ' + DATENAME(MM, GETDATE()) + ' ' + CAST(YEAR(GETDATE()) AS VARCHAR(4)) AS [DD Month YYYY