다음을 통해 공유


XPath 쿼리에서 산술 연산자 지정(SQLXML 4.0)

다음 예제에서는 XPath 쿼리에서 산술 연산자를 지정하는 방법을 보여 줍니다. 이 예제의 XPath 쿼리는 SampleSchema1.xml포함된 매핑 스키마에 대해 지정됩니다. 이 샘플 스키마에 대한 자세한 내용은 XPath 예제에 대한 주석이 추가된 샘플 XSD 스키마(SQLXML 4.0)를 참조하세요.

예시

A. * 산술 연산자 지정

이 XPath 쿼리는 지정된 조건자를 충족하는 OrderDetail> 요소를 반환<합니다.

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

쿼리 child 에서 축이며 OrderDetail 노드 테스트입니다(요소 노드가 축의 주 노드>이기 때문에 OrderDetail이< 요소>노드인 경우 TRUE<).child 모든 <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>