无法在SQL Select中为DATEOFFSET(2)添加时间

时间:2018-05-24 16:53:39

标签: sql-server tsql datetime

我需要将数据库上的日期时间字段转换为使用" T"和祖鲁时间的XML输出。我将该部分工作,我将日期时间字段转换为日期,然后使用" T"将其转换为zulu时间。添加到输出中:

y ~ trt | x

此输出类似于:

, CONVERT(VARCHAR(30), CAST(CONVERT(DATE,OEO.ScheduledShipDate) AS DATETIMEOFFSET(2)), 127) AS ScheduledEarlyPickup

现在我需要将此更改为hh:mm:ss显示23:59:00的效果:

2001-02-11T00:00:00Z
2001-06-13T00:00:00Z
2001-11-21T00:00:00Z
2001-12-03T00:00:00Z
2002-02-16T00:00:00Z
2002-03-27T00:00:00Z
2002-04-05T00:00:00Z
2002-04-12T00:00:00Z

我认为像下面这样的简单代码可以完成这项工作,但我不确定为什么数据保持不变:

2001-02-11T23:59:00Z
2001-06-13T23:59:00Z
2001-11-21T23:59:00Z
2001-12-03T23:59:00Z
2002-02-16T23:59:00Z
2002-03-27T23:59:00Z
2002-04-05T23:59:00Z
2002-04-12T23:59:00Z

任何想法都表示赞赏。

谢谢, RV

1 个答案:

答案 0 :(得分:0)

没关系。我没有注意到一个简单的语法错误。如果有人要求,请输入以下代码:

,CONVERT(VARCHAR(30), CAST(OEO.ScheduledShipDate + '23:59:00' AS DATETIMEOFFSET(2)), 127)