Functions on Numbers

XQuery provides a number of functions that operate on numeric values. Some operate on single numeric values. They are summarized in Table 16-7 and covered in more detail in Appendix A. Each of these functions returns a numeric value whose type is the same as its argument, or the empty sequence if the argument is the empty sequence.

Table 16-7. Functions on single numbers

Function name

Description

round

The argument rounded to the nearest whole number

round-half-to-even

The argument rounded to a specified precision, with half values rounded to the nearest even number

floor

The largest whole number that is not greater than the argument

ceiling

The smallest whole number that is not smaller than the argument

abs

The absolute value of the argument

Table 16-8 lists some additional functions that can be used to aggregate or summarize numeric data. These functions accept a sequence of numeric values and return a single numeric result. All of these functions will automatically cast untyped values to xs:double, so it is not necessary to perform any explicit casting to have the values treated like numbers.

Table 16-8. Functions on sequences of numbers

Function name

Description

avg

The average of a sequence of numbers

sum

The sum of a sequence of numbers

min

The minimum value of a sequence of numbers

max

The maximum value of a sequence of numbers

Get XQuery now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.