在SQL Query输出中临时更改日期列的格式

时间:2014-02-27 19:49:18

标签: sql sql-server tsql sql-server-2008-r2

我从SQL Server中提取数据,我们后端的日期格式很难看,就像这样:

2014-01-10 00:00:00.000

我想知道是否有某种功能可以在我的查询中运行,以便在输出中以不同方式显示日期列?我不想实际改变后端格式化列的方式,我只想更改在sigle查询结果中呈现给用户的方式。

感谢您的帮助!

编辑:我使用的是SQL Server 2008 R2作为我的RDBMS

2 个答案:

答案 0 :(得分:0)

SQL 2012:有FORMAT()

SELECT FORMAT(Date_Field,'ddd, MM yyyy')

以下是FORMAT() options

的列表

在SQL 2012之前:

SELECT CONVERT(VARCHAR(12),Date_Field,109)

CONVERT() styles

列表

如果您只想删除时间部分,可以:

SELECT CAST(Date_Field AS DATE)

答案 1 :(得分:0)

您可以使用CONVERT功能设置日期时间输出的格式。有关更多详细信息和示例,请查看转换功能的MSDN documentionW3Schools page

以下是一些可用的不同格式的快速示例。

SELECT CONVERT(VARCHAR(19), GETDATE())
SELECT CONVERT(VARCHAR(10), GETDATE(),10)
SELECT CONVERT(VARCHAR(10), GETDATE(),110)
SELECT CONVERT(VARCHAR(11), GETDATE(),106)
SELECT CONVERT(VARCHAR(24), GETDATE(),113)

结果:

Feb 27 2014 11:54AM 
02-27-14
02-27-2014
27 Feb 2014
27 Feb 2014 11:54:33:977