没有与xmlnamespace一起使用的结果

时间:2013-04-02 21:40:35

标签: sql xml-namespaces exists

我是使用WITH XMLNAMESPACES的新手,并且使用exist()方法生成结果有些困难。我查询的xml列如下:

    <Root>
      <ProductDescription ProductID="1" ProductName="Road Bike">
        <Features>
          <Warranty>1 year parts and labor</Warranty>
          <Maintenance>3 year parts and labor extended maintenance is 
                       available       
          </Maintenance>
        </Features>
      </ProductDescription>
    </Root>

我试图在结果集中返回一个xml命名空间,从Microsoft的修改示例开始。但是,当我执行以下查询时,我得到0结果。但是,从WHERE子句中删除别名确实会产生结果。

    WITH XMLNAMESPACES ('uri' as pd)

    SELECT 

        Trans_ID,
        Bike_Sales.query
        (
            '<ProductDescription Product_ID = "{ sql:column("Trans_ID")}"/>'        
        ) AS  Result                                                                            

    FROM XML_EXAMPLE

    WHERE 

        Bike_Sales.exist        
        (
             '/pd:Root/ProductDescription[(pd:Features)]'
        ) = 1

所以基本上我只想返回Features元素所在的行。有什么建议吗?

感谢。

0 个答案:

没有答案