次の方法で共有


max 関数 (XQuery)

$arg のアトミック値のシーケンスの中から最も大きい値を保持するアイテムを返します。

構文

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

引数

  • $arg
    最大値の取得元になるアトミック値のシーケンス。

説明

max() に渡されるアトミック値の型はすべて、同じ基本データ型のサブタイプである必要があります。 使用できる基本データ型は、gt 操作をサポートする型です。 この型には、3 つの組み込み数値基本データ型、date/time 基本データ型、xs:string、xs:boolean、および xdt:untypedAtomic が含まれます。 xdt:untypedAtomic 型の値は、xs:double にキャストされます。 これらの型が混在している場合、または他の型の他の値が渡された場合は、静的エラーが発生します。

xdt:untypedAtomic の場合、max() の結果は xs:double など、渡された型の基本データ型を受け取ります。 入力が静的に空の場合は、結果が暗黙的に空になり、静的エラーが生成されます。

max() 関数は、入力シーケンスの値のうち、最も大きい値を返します。 xs:string 値の場合は、既定の Unicode コードポイント照合順序が使用されます。 xdt:untypedAtomic 値を xs:double にキャストできない場合、入力シーケンス $arg 内でこの値は無視されます。 入力が、動的に計算された空のシーケンスである場合は、空のシーケンスが返されます。

使用例

このトピックでは、 AdventureWorks2012 データベースのさまざまな xml 型の列に格納されている XML インスタンスに対して実行する XQuery の例について説明します。

A. max() XQuery 関数を使用した、製造プロセス内で労働時間が最も長いワーク センターの場所の検索

min 関数 (XQuery)」で使用しているクエリは、max() 関数を使用するように書き直すことができます。

実装の制限事項

次に、制限事項を示します。

  • max() 関数では、すべての整数値が xs:decimal にマップされます。

  • xs:duration 型の値では、max() 関数はサポートされません。

  • 基本データ型の境界を超えて複数の型が混在するシーケンスはサポートされません。

  • 照合順序を指定する構文オプションはサポートされません。

関連項目

参照

xml データ型に対する XQuery 関数