在mysql中如何选择xml属性值?

gz5pxeao  于 2021-06-19  发布在  Mysql
关注(0)|答案(3)|浏览(360)
<category field="height">
            <num>185</num>
          </category>
          <category field="weight">
            <num>90</num>
          </category>

我需要从标签中获取价值 num 仅从标签 category ,其中属性 field 等于 weight .
注: field="height" xml中可能缺少。

zsohkypk

zsohkypk1#

选择 num 父元素 categoryfield 属性为 "weight" :

ExtractValue(xml, '//category[@field="weight"]/num')
c0vxltue

c0vxltue2#

试试这个:

SELECT ExtractValue('<category field="height"><num>185</num></category><category field="weight"><num>90</num></category>', 'category/num[../@field="weight"]');

就是这样

SELECT ExtractValue(Column, 'category/num[../@field="weight"]');
pn9klfpd

pn9klfpd3#

找到解决方案: SELECT ExtractValue(xml, '//category/num[../@field="weight"]');

相关问题