我有一个xml文件,显示如下数据:
<learner>
<name>Smith</name>
<ULN>123456</ULN>
</learner>
<learner>
<name>Jones</name>
<ULN>56789</ULN>
</learner>
我有一个表将文件存储为varchar(max),因为我无法从我的前端系统直接上传为xml。
我可以通过创建表来读取文件作为xml文件:
declare @ILRDATA table (Data xml)
Insert into @ILRDATA (Data)
select FileUpload from ILRDATA.dbo.ILRUpload
select * from @ILRDATA
我现在想用列创建一个@table(Name varchar(50),ULN varchar(10))
我想用xml数据填充它
在我浪费整整一天试图解决这个问题之前,有人可以帮助我。
由于
答案 0 :(得分:2)
select
t.c.value('name[1]', 'nvarchar(50)') as name,
t.c.value('ULN[1]', 'nvarchar(10)') as ULN
from @ILRDATA as d
outer apply d.Data.nodes('learner') as t(c)