在 XPath 查詢中指定算術運算子 (SQLXML 4.0)

適用於:SQL ServerAzure SQL Database

下列範例示範如何在 XPath 查詢中指定算術運算子。 此範例中的 XPath 查詢會針對 SampleSchema1.xml 中包含的對應結構描述來指定。 如需此範例架構的相關資訊,請參閱 XPath 範例的範例 XSD 架構 (SQLXML 4.0)

範例

A. 指定 * 算術運算子

這個 XPath 查詢會傳< 回滿足指定述詞的 OrderDetail >元素:

/child::OrderDetail[@UnitPrice * @Quantity = 12.350]  

在查詢中, child 是座標軸, OrderDetail 如果OrderDetail< 元素節點 >,則為節點測試 (TRUE,因為< 專案 >節點是軸的主要節點) 。 針對所有< OrderDetail >元素節點,會套用述詞中的測試,而且只會傳回滿足條件的節點。

注意

XPath 中的數字為雙精確度浮點數,而且在範例中比較浮點數會造成四捨五入。

針對對應的結構描述測試 XPath 查詢
  1. 複製 範例架構程式碼 ,並將其貼到文字檔中。 將檔案儲存為 SampleSchema1.xml。

  2. 建立下列範本 (ArithmeticOperatorA.xml),並將其儲存在儲存 SampleSchema1.xml 的目錄中。

    <ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">  
      <sql:xpath-query mapping-schema="SampleSchema1.xml">  
        /OrderDetail[@UnitPrice * @OrderQty = 12.350]  
      </sql:xpath-query>  
    </ROOT>  
    

    針對對應結構描述 (SampleSchema1.xml) 指定的目錄路徑相對於儲存範本的目錄。 您也可以指定絕對路徑,例如:

    mapping-schema="C:\MyDir\SampleSchema1.xml"  
    
  3. 建立和使用 SQLXML 4.0 測試指令碼 (Sqlxml4test.vbs) 以執行範本。

    如需詳細資訊,請參閱 使用 ADO 執行 SQLXML 4.0 查詢

Here is the partial result set of the template execution:    
<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">  
  <OrderDetail ProductID="Prod-709" UnitPrice="6.175" OrderQty="2" UnitPriceDiscount="0" />   
  <OrderDetail ProductID="Prod-709" UnitPrice="6.175" OrderQty="2" UnitPriceDiscount="0" />   
  <OrderDetail ProductID="Prod-709" UnitPrice="6.175" OrderQty="2" UnitPriceDiscount="0" />   
  <OrderDetail ProductID="Prod-709" UnitPrice="6.175" OrderQty="2" UnitPriceDiscount="0" />   
  <OrderDetail ProductID="Prod-709" UnitPrice="6.175" OrderQty="2" UnitPriceDiscount="0" />   
  <OrderDetail ProductID="Prod-709" UnitPrice="6.175" OrderQty="2" UnitPriceDiscount="0" />   
  <OrderDetail ProductID="Prod-709" UnitPrice="6.175" OrderQty="2" UnitPriceDiscount="0" />   
  <OrderDetail ProductID="Prod-710" UnitPrice="6.175" OrderQty="2" UnitPriceDiscount="0" />   
   ...  
</ROOT>