Udostępnij przez


pułap funkcja (XQuery)

Zwraca najmniejszą liczbę bez części ułamkowej, a to jest nie mniejsza niż wartość argumentu.Jeśli argument jest sekwencją puste, zwraca pusty sekwencji.

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

Argumenty

  • $arg
    Numer, do którego funkcja jest stosowana.

Remarks

Jeśli typ $arg jest jednym z trzech typów podstawowych numeryczne, xs:float, xs:Double, or xs:decimal, typ zwracany jest taka sama, jak $arg Typ.

Jeśli typ $arg Typ wskazuje że pochodzi z jednego z typów liczbowych, zwracany typ jest numeryczny typ podstawowy.

Jeśli dane wejściowe do funkcji fn:floor, fn:ceiling lub fn:round XDT:untypedAtomic, jest niejawnie rzutować xs:Double.

Każdy inny typ generuje błąd statyczny.

Przykłady

W tym temacie przedstawiono przykłady XQuery przed XML wystąpienia, które są przechowywane w różnych XML typu kolumny bazy danych AdventureWorks.Aby uzyskać ogólne informacje o każdej z tych kolumn zobacz xml Data Type Representation in the AdventureWorks Database.

A.Za pomocą funkcja XQuery ceiling()

Dla modelu produktu 7 ta kwerenda zwraca listę lokalizacji gniazda roboczego w procesie produkcyjnym modelu produktu.Dla każdej lokalizacji gniazda roboczego kwerenda zwraca identyfikator lokalizacji, godziny pracy i wielkość partii, jeśli udokumentowane.W kwerendzie użyto sufitu funkcja zwracająca liczbę godzin pracy jako wartości typu Liczba dziesiętna.

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

Pierwszy przycisk jest przyciskiem domyślnym.

  • Prefiks obszaru nazw AWMI oznacza firmy Adventure Works produkcji instrukcji.Ten prefiks odnosi się do tego samego obszaru nazw stosowany w dokumencie, którego dotyczy kwerenda.

  • Instrukcje is an XML typu kolumna.Dlatego też Metoda Query() (typ danych XML) służy do określania XQuery.Instrukcja XQuery jest określony jako argument metoda kwerendy.

  • Aby... zwrotu jest konstrukcji pętli.W kwerendzie dla pętli identyfikuje się lista elementów > < lokalizacji. Dla każdej lokalizacji gniazda roboczego zwrot instrukcjadla pętli opisuje XML do wygenerowania:

    • A <Lokalizacja> element, który zawiera atrybuty LocationID i LaborHrs. Odpowiednie wyrażenie w nawiasach klamrowych ({}) pobiera wymagane wartości z dokumentu.

    • Wyrażenie {$i/@LotSize} pobiera atrybut LotSize z dokumentu, jeśli jest obecna.

    • To jest wynik:

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

defaultButton

Ograniczenia są następujące:

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