【问题标题】:Syntax for xquery with namespace in the node节点中带有命名空间的 xquery 的语法
【发布时间】:2011-02-24 16:51:45
【问题描述】:

我们正在尝试从 sql 查询中获取 IdValue。我们使用的是 sql server 2005。

DECLARE @MyXML XML
SET @MyXML = '<Candidate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://ns.hr-xml.org/2007-04-15">
  <CandidateProfile>
    <ProfileId>
      <IdValue>9499063</IdValue>
    </ProfileId>
  </CandidateProfile>
  </Candidate>'

SELECT @MyXML.value('Candidate[1]/CandidateProfile[1]/ProfileId[1]','varchar(10)') AS Id

由于候选标记中的名称空间,这不起作用。

请告诉我如何使用命名空间进行 xquery。

【问题讨论】:

    标签: sql-server-2005 xml-namespaces xquery-sql


    【解决方案1】:
        SELECT @MyXML.value(
        'declare namespace hr="http://ns.hr-xml.org/2007-04-15";
        hr:Candidate[1]/hr:CandidateProfile[1]/hr:ProfileId[1]','varchar(10)'
        ) 
        AS Id 
    

    http://msdn.microsoft.com/en-US/library/ms189075(v=SQL.90).aspx

    【讨论】:

    • 太棒了。非常感谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-21
    • 1970-01-01
    • 2015-09-16
    • 1970-01-01
    相关资源
    最近更新 更多