entitySelection.max( ) メソッドはエンティティセレクション内のattributePath 引数の全ての値のうち最高の(あるいは最大の)値を返します。別のいい方をすると、entitySelection.orderBy( ) メソッドでエンティティセレクションを昇順に並べたときん最初のエンティティを返します。
attributePath 引数に、異なる方の値を格納しているオブジェクト属性を渡した場合、entitySelection.max( ) メソッドは型順リストの中で最初のスカラー型の値の中の最小値を返します(collection.sort( ) の詳細を参照してください)。
エンティティセレクションが空の場合、またはattributePath 引数がオブジェクト属性内に見つからない場合、entitySelection.max( ) はundefined を返します。
以下の場合には、エラーが返されます:
- attributePath がリレートされた属性の場合
- attributePath がエンティティセレクションデータクラス内にない属性を指定している場合
ここでは、女性の従業員の中で最も高い給与を見つけたい場合を考えます:
C_OBJECT($sel)
C_REAL($maxSalary)
$sel:=ds.Employee.query("gender = :1";"female")
$maxSalary:=$sel.max("salary")