round 関数 (XQuery)
引数に最も近く、小数部分を持たない数値を返します。 そのような数値が複数ある場合、正の無限大に最も近い数値が返されます。 次に例を示します。
引数が 2.5 の場合、round() は 3 を返します。
引数が 2.4999 の場合、round() は 2 を返します。
引数が -2.5 の場合、round() は -2 を返します。
引数が空のシーケンスの場合、round() は空のシーケンスを返します。
構文
fn:round ( $arg as numeric?) as numeric?
引数
- $arg
関数を適用する数値。
説明
$arg の型が、xs:float、xs:double、または xs:decimal の 3 つの数値基本データ型のいずれかである場合、戻り値の型は $arg の型と同じ型になります。 $arg の型が数値型のいずれかから派生した型である場合、派生元の数値型が返されます。
fn:floor、fn:ceiling、または fn:round 関数への入力が、型指定されていないデータ xdt:untypedAtomic である場合、データは xs:double に暗黙的にキャストされます。
その他の型のデータが入力されると、静的エラーが生成されます。
使用例
このトピックでは、AdventureWorks データベースのさまざまな xml 型の列に格納されている XML インスタンスに対して実行する XQuery の例を紹介します。
ceiling 関数 (XQuery) の作業用サンプルを round() XQuery 関数に使用できます。 必要な作業は、クエリ内の ceiling() 関数を round() 関数に置き換えることだけです。
実装の制限事項
次に、制限事項を示します。
round() 関数では、整数値が xs:decimal にマップされます。
round() 関数では、-0.5e0 から -0e0 までの xs:double 値および xs:float 値は、-0e0 ではなく 0e0 にマップされます。