我试图从表中的一行提取键值(1,2,3),但是我一次只能提取一行:
cast([attributes] as XML).value('(//Map/entry[@key="catalogItem"]/value/Map/entry/@key)[1]','VARCHAR(20)')
根据我在[x]中输入的数字,我会得到那个条目。我试图删除[x],但得到了错误:XQuery [值()]:“value()”需要单例(或空序列),找到类型为“xdt:untypedAtomic *”的操作数
<Map>
<entry key="catalogItem">
<value>
<Map>
<entry key="1" value="x"/>
<entry key="2" value="y"/>
<entry key="3" value="z"/>
我希望结果为单列
1
2
3
1条答案
按热度按时间j9per5c41#
请尝试以下解决方案。
XQuery方法
.nodes()
和.value()
的组合满足了您的需要。| 身份证|键|
| - ------|- ------|
| 1个|1个|
| 1个|第二章|
| 1个|三个|