【发布时间】:2017-09-24 16:40:02
【问题描述】:
我有一个这样的 XML
<Cat>
<Inner>
<PATCat>
<Pat>SUR</Pat>
<EfDa>20170411093000</EfDa>
</PATCat>
<PATCat>
<Pat>MH</Pat>
<EfDa>20170411094100</EfDa>
</PATCat>
<PATCat>
<Pat>NRO</Pat>
<EfDa>20170411095300</EfDa>
</PATCat>
<PATCat>
<Pat>DAY</Pat>
<EfDa>20170411110900</EfDa>
</PATCat>
</Inner>
</Cat>
我正在使用查询来读取节点 Pat 和 EfDa
SELECT @PATCat_Pat = Pat,
@PATCat_EfDa = EfDa,
FROM OPENXML(@idoc, '/Cat/Inner', 2)
WITH (
FiCl VARCHAR(20) 'PATCat/Pat',
EfDa VARCHAR(20) 'PATCat/EfDa',
)
结果是@PATCat_Pat = SUR 和@PATCat_EfDa = 20170411093000,而我想读取最后一个节点“DAY”和“20170411110900”
我怎样才能做到这一点?任何帮助将不胜感激
谢谢
【问题讨论】:
-
可以加
last():FiCl VARCHAR(20) 'PATCat[last()]/Pat',吗?
标签: sql sql-server xml openxml sql-server-openxml