我需要帮助从XML字段中删除T

时间:2018-07-12 14:57:32

标签: sql sql-server xml

我有一个包含2列的表。一列是smalldatetime,另一列是smallint。 smallint代表分钟。我想将分钟添加到现有的日期时间字段中,并生成具有MM-DD-YYY HH:MM:SS格式的XML。目前,我只得到YYYY-mm-ddTHH:MM:SS。

create table #temp(dt smalldatetime, intmin smallint)
insert into #temp(dt,intmin)
select getdate(),631
select  DATEADD(minute,intmin,format(cast(dt as datetime), 'MM/dd/yyyy 
hh:mm:ss')) from #temp for xml path('Orders'),root('Order')

输出为:

<Order>
<Orders>2018-07-12T20:49:00</Orders>
</Order>

1 个答案:

答案 0 :(得分:-1)

使用CONVERTVARCHAR 120

DECLARE @DateTime DATETIME = GETDATE()

SELECT
     @DateTime
FOR XML PATH

输出

<row>2018-07-12T16:09:53.730</row> --Includes a T

现在删除T

SELECT
    CONVERT(VARCHAR, @DateTime, 120)
FOR XML PATH

输出

 <row>2018-07-12 16:09:53.730</row>  --T removed