繁体   English   中英

Xquery返回具有受限节点的行

[英]Xquery to return rows with restricted nodes

我有一个表,其中一列包含XML数据。 现在我想要检查具有节点限制的那些xml数据。 请参阅以下示例以获取有关我的方案的更多说明,

declare @table table (id int, xmlfield xml) insert into @table select 1,'<Root xmlns="">
    <Sample>
    <Issue>
      <Level>one</Level>
      <Descp>First Example</Descp>
    </Issue>
    <Issue>
      <Level>two</Level>
      <Descp>Second Example</Descp>
    </Issue>
    </Sample> </Root>'

      select * from @table

现在我需要以下结果集

Id  XMLfield

1   first example

即,对于选定的级别,我需要对其进行解密。 更清楚的是,节点应该被限制为<level>one</level>

(需要:第一级的描述是什么?)

提前致谢

看看xml数据类型方法

select id,
       xmlfield.value('(//Issue[Level = "one"]/Descp/text())[1]', 'varchar(100)') as XMLField
from @table

你正在寻找的XQuery是

//Issue[Level = "one"]/Descp/data()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM