Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Область применения:SQL Server
Возвращает наименьшее целое число, которое не меньше значения, переданного как аргумент функции. Если аргумент представляет собой пустую последовательность, то возвращается пустая последовательность.
Синтаксис
fn:ceiling ( $arg as numeric?) as numeric?
Аргументы
$arg
Число, к которому применяется функция.
Замечания
Если тип $arg является одним из трех числовых базовых типов, xs:float, xs:double или xs:decimal, возвращаемый тип совпадает с типом $arg .
Если тип $arg является типом, производным от одного из числовых типов, возвращаемый типом является базовым числовым типом.
Если входные данные для fn:floor, fn:ceiling или fn:round функций xdt:untypedAtomic, он неявно приведение к xs:double.
Использование любого другого типа вызовет статическую ошибку.
Примеры
В этом разделе приведены примеры XQuery для экземпляров XML, хранящихся в различных столбцах типа XML в базе данных AdventureWorks.
А. Использование функции XQuery ceiling()
Для модели продуктов 7 этот запрос вернет список адресов цехов, участвующих в производстве продуктов этой модели. Для каждого адреса цеха запрос вернет идентификатор адреса, рабочее время и размер территории, если они указаны. Запрос использует функцию потолка для возврата часов труда в качестве значений десятичного типа.
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
Обратите внимание на следующие данные из предыдущего запроса:
Префикс пространства имен AWMI означает «Adventure Works Manufacturing Instructions» (производственные инструкции Adventure Works). Этот префикс именует то же пространство имен, что используется и в документе, к которому строится запрос.
Инструкции — это столбец типа XML . Поэтому метод query() (тип данных XML) используется для указания XQuery. Инструкция XQuery задана как аргумент метода query.
для... return — это конструкция цикла. В запросе цикл для определения списка <элементов Location> . В каждом расположении центра работы инструкция return в циклеописывает xml для создания:
Элемент <Location с атрибутами LocationID> и WorkHrs. Соответствующее выражение в фигурных скобках ({ }) получает запрашиваемые значения из документа.
Выражение {$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"/>
Ограничения реализации
Существуют следующие ограничения:
- Функция потолок () сопоставляет все целые значения с xs:decimal.