문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

ceiling 함수(XQuery)

소수점 부분이 없이 해당 인수의 값보다 작지 않은 가장 작은 수를 반환합니다. 인수가 빈 시퀀스이면 빈 시퀀스가 반환됩니다.

fn:ceiling ( $arg as numeric?) as numeric?

$arg

함수가 적용되는 번호입니다.

$arg의 유형이 3가지 숫자 기본 유형인 xs:float, xs:double 또는 xs:decimal 중 하나이면 반환 유형은 $arg 유형과 같습니다.

$arg의 유형이 숫자 유형 중 하나에서 파생된 것이라면 반환 유형은 기본 숫자 유형입니다.

fn:floor, fn:ceiling 또는 fn:round 함수에 대한 입력이 xdt:untypedAtomic인 경우 이 데이터는 xs:double로 암시적으로 캐스팅됩니다.

다른 유형을 사용하면 정적 오류가 발생합니다.

이 항목에서는 AdventureWorks 데이터베이스의 다양한 xml 유형 열에 저장된 XML 인스턴스에 대한 XQuery 예를 제공합니다.

1.ceiling() XQuery 함수 사용

제품 모델 7에 대해 이 쿼리는 제품 모델의 제조 프로세스에 있는 작업 센터 위치 목록을 반환합니다. 각 작업 센터 위치에 대해 다음 쿼리는 문서화된 경우 위치 ID, 근무 시간 및 부지 크기를 반환합니다. 다음 쿼리는 ceiling 함수를 사용하여 decimal 유형의 값으로 근무 시간을 반환합니다.

SELECT ProductModelID, Instructions.query('
declare namespace AWMI="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelManuInstructions"; 
     for $i in /AWMI:root/AWMI:Location
     return 
       <Location LocationID="{ $i/@LocationID }" 
                   LaborHrs="{ ceiling($i/@LaborHours) }" >
                    { 
                      $i/@LotSize
                    }  
       </Location>
') AS Result
FROM Production.ProductModel
WHERE ProductModelID=7

이전 쿼리에서 다음을 유의하십시오.

  • AWMI 네임스페이스 접두사는 Adventure Works Manufacturing Instructions를 나타냅니다. 이 접두사는 쿼리되는 문서에 사용된 같은 네임스페이스를 참조합니다.

  • Instructionsxml 유형의 열입니다. 따라서 XQuery를 지정하는 데 query() 메서드(XML 데이터 형식)가 사용됩니다. XQuery 문은 쿼리 메서드에 대한 인수로 지정됩니다.

  • for ... return은 루프 구성입니다. 쿼리에서 for 루프는 <Location> 요소의 목록을 식별합니다. 각 작업 센터 위치에서 for 루프에 있는 return 문은 생성할 XML을 기술합니다.

    • LocationID 및 LaborHrs 특성이 있는 <Location> 요소. 중괄호({ }) 안에 있는 해당 식은 문서에서 필요한 값을 검색합니다.

    • { $i/@LotSize } 식은 문서에서 LotSize 특성(있는 경우)을 검색합니다.

    • 다음은 결과입니다.

ProductModelID Result  
-------------- ------------------------------------------------------
7      <Location LocationID="10" LaborHrs="3" LotSize="100"/>
       <Location LocationID="20" LaborHrs="2" LotSize="1"/>   
       <Location LocationID="30" LaborHrs="1" LotSize="1"/>   
       <Location LocationID="45" LaborHrs="1" LotSize="20"/>
       <Location LocationID="60" LaborHrs="3" LotSize="1"/>   
       <Location LocationID="60" LaborHrs="4" LotSize="1"/>

구현 시 제한 사항

제한 사항은 다음과 같습니다.

  • ceiling() 함수는 모든 정수 값을 xs:decimal로 매핑합니다.

커뮤니티 추가 항목

추가
표시: