如何在保持相同格式的同时将datetime转换为nvarchar?

时间:2014-04-07 23:52:13

标签: sql-server sql-server-2008 date-format

如何在不使用一系列连接的datepart函数的情况下,在删除微秒并保持相同格式的同时,将带有时间戳的日期时间转换为nvarchar?我环顾四周,但解决方案对我不起作用。 -

Convert datetime to nvarchar but keep format convert(nvarchar(20),'2012-11-22 06:50:10.000',20)= 2012年11月22日上午6:50

实施例。 日期:2012-11-22 06:50:10.000 - > NVARCHAR:2012-11-22 06:50:10

2 个答案:

答案 0 :(得分:3)

这似乎对我有用 -

declare @dt datetime = '2012-11-22 06:50:10.000'
select convert(varchar(20),@dt,120) -- result is 2012-11-22 06:50:10

这是一个SQL小提琴,显示它:http://www.sqlfiddle.com/#!3/b9bb1/7

这 -

convert(nvarchar(20), '2012-11-22 06:50:10.000', 20)

不起作用,因为日期只是一个varchar

答案 1 :(得分:0)

你可以这样做

SELECT CONVERT(nvarchar(20), '2012-11-22 06:50:10.000', 120)