某些列的MSSQL格式时间格式值

时间:2016-03-22 10:27:05

标签: sql-server

使用SQL Server 2008R2

假设我运行以下查询并将示例值作为输出:

查询:

EmailAttachment

输出:

select name, crdate 
from master.dbo.sysdatabases

如何更改时间值的输出格式?

示例:

master  2003-04-08 09:13:36.390
tempdb  2016-03-17 19:47:41.990
model   2003-04-08 09:13:36.390
msdb    2010-04-02 17:35:08.970

master  2003-04-08 09:13:36

2 个答案:

答案 0 :(得分:1)

你可以使用......

select name,DATEADD(ms, -DATEPART(ms, crdate), crdate)
from master.dbo.sysdatabases

或使用其他选项是: -

select name,CONVERT(DATETIME, CONVERT(VARCHAR(20), crdate, 120))
from master.dbo.sysdatabases

我认为这很有帮助。

答案 1 :(得分:-1)

Here是时间转换样式的参考。 Another link用于自定义格式文档。

第二种情况的例子:

select name, FORMAT(crdate, 'MM-dd-yyyy HH:mm', 'en-US') AS 'crdate' from master.dbo.sysdatabases