Aracılığıyla paylaş


TAVANAYUVARLA işlevi (XQuery)

Kesirli bölümü ve diğer bir deyişle, bağımsız değişkenin değerinden küçük olmayan en küçük sayıyı verir.Bağımsız değişken boş bir sıra ise boş sırası döndürür.

Sözdizimi

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

Bağımsız değişkenler

  • $arg
    işlev uygulandığı numarası.

Açıklamalar

Yoksa türü $arg üç sayısal temel türlerinden biri olan xs:float, xs:double, veya xs:decimal, dönüş türü aynıdır $arg türü.

Yoksa türü $arg sayısal türlerinden birini türetilmiş bir tür dönüş türü olan temel sayısal tür.

Fn:floor, fn:ceiling veya fn:round işlevlerine Giriş ise xdt:untypedAtomic, onu dolaylı olarak için artığını xs:double.

Diğer her türlü statik bir hata üretir.

Örnekler

Bu konuda çeşitli içinde depolanan xml örnekleri karşı XQuery örnekler sağlar xml sütunları yazın AdventureWorks2008R2 veritabanı.Bir bakış bu sütunların her biri için bkz: XML veri türü temsili AdventureWorks2008R2 veritabanında.

A.Ceiling() XQuery kullanarakişlev

Ürün modeli 7 bu sorgu ürün modelinin üretim süreci içinde iş merkezi konumları listesini döndürür.Her iş merkezi konum için sorgu lot boyutu, konum kodu ve işçilik saat belgelenen döndürür.Sorguyu kullanır tavan işçilik saat türü değerleri olarak dönmek için işlev Ondalık.

SELECT ProductModelID, Instructions.query('
declare namespace AWMI="https://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

Önceki sorgudan aşağıdakilere dikkat edin:

  • AWMI ad alanı öneki için Adventure Works üretim yönergeleri anlamına gelir.Bu öneki sorgulanan belgede kullanılan aynı ad alanını gösterir.

  • Yönergeleri olan bir xml türü sütun.Bu nedenle, query() yöntem (xml veri türü) XQuery belirtmek için kullanılır.XQuery deyim query yöntemni bağımsız olarak belirtilir.

  • için... Dönüş bir döngü yapısıdır.Sorgu için döngü tanımlar listesi <yere> öğeleri.Her iş merkezi konum için dönmek deyim içinde için döngü oluşturulacak xml açıklar:

    • A <yere> öğesi olan LocationID ve LaborHrs öznitelikleri.Buna karşılık gelen ifade kaşlı ayraç ({}) içine belgeden gerekli değerleri alır.

    • {$İ/@LotSize} ifade LotSize öznitelik varsa belgeden alır.

    • Bu sonucu verir:

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"/>

Uygulama kısıtlamaları

Sınırlamalar şunlardır:

  • The ceiling() function maps all integer values to xs:decimal.