在我的 Microsoft SQL Server 2005 数据库中,WorkingDays
列中有数据,例如:
<WorkingDays>
<Day>2011-05-05</Day>
<Day>2011-05-06</Day>
</WorkingDays>
如何在 T-SQL 查询中将它们反序列化为 DateTime
格式?
最佳答案
尝试这样的事情:
DECLARE @TEST TABLE(ID INT IDENTITY, XmlContent XML)
INSERT INTO @TEST(XmlContent) VALUES('<WorkingDays>
<Day>2011-05-05</Day>
<Day>2011-05-06</Day>
</WorkingDays>')
SELECT
ID,
WD.DAYS.value('(.)[1]', 'datetime') AS 'Day'
FROM
@TEST
CROSS APPLY
XmlContent.nodes('/WorkingDays/Day') AS WD(Days)
这给了我一个输出:
ID Day
1 2011-05-05 00:00:00.000
1 2011-05-06 00:00:00.000
关于sql - 如何反序列化在 T-SQL 中使用 FOR XML AUTO 序列化的数据记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6150951/