聚合函数 - max

适用于:SQL Server

从原子值的序列 中返回,$arg,即值大于所有其他值的一个项。

语法

  
fn:max($arg as xdt:anyAtomicType*) as xdt:anyAtomicType?  

参数

$arg
返回原子值序列中的最大值。

注解

传递给 max () 的所有原子化值类型都必须是同一基类型的子类型。 接受的基本类型是支持 gt 操作的类型。 这些类型包括三种内置数值基类型、日期/时间基类型、xs:string、xs:boolean 和 xdt:untypedAtomic。 类型为 xdt:untypedAtomic 的值将转换为 xs:double。 如果混合了这些类型,或者传递了其他类型的其他值,则会引发静态错误。

max () 的结果接收传入类型的基类型,例如 xdt:untypedAtomic 的 xs:double。 如果输入在静态上为空,则暗示为空,并且会引发静态错误。

max () 函数返回序列中大于输入序列中任何其他值的一个值。 对于 xs:string 值,则使用默认的 Unicode 码位排序规则。 如果 xdt:untypedAtomic 值无法强制转换为 xs:double,则该值在输入序列中将被忽略, $arg。 如果输入是动态计算的空序列,则返回空序列。

示例

本主题提供针对存储在数据库中各种 xml 类型列中的 XML 实例的 AdventureWorks2022 XQuery 示例。

A. 使用 max() XQuery 函数来查找生产过程中工时最多的生产车间。

可以重写 min 函数 (XQuery) 中提供的查询以使用 max () 函数。

实现限制

限制如下:

  • max () 函数将所有整数映射到 xs:decimal。

  • 不支持对类型为 xs:duration 的值使用 max () 函数。

  • 不支持跨基类型边界混合类型的序列。

  • 不支持提供排序规则的语法选项。

另请参阅

针对 xml 数据类型的 XQuery 函数