MAXIMUM( ) 函数

返回一组数值类型值中的最大值,或一组日期时间类型值中的最新值。

语法

MAXIMUM(值1, 值2 <,...n>)

参数

名称 类型 描述
值1, 值2 <, ...n>

数值

日期时间

要比较的值,由逗号分隔。

所有值都必须具有相同的数据类型。

另外,日期时间值必须具有相同的子类型。您不能在该函数的单次执行中混用日期、日期时间或时间值。

输出

数值或日期时间。

示例

基本示例

字面量数值输入

返回 7:

MAXIMUM(4, 7)

返回 8:

MAXIMUM(4, 7, 3, 8)

返回 8.00:

MAXIMUM(4, 7.25, 3, 8)

字面量日期时间输入

返回 `20161231`:

MAXIMUM(`20161231`, `20161229`, `20161230`)

返回 `20161231 23:59:59`:

MAXIMUM(`20161231 235959`, `20161229 235959`)

返回 `23:59:59`:

MAXIMUM(`.235957`, `.235959`, `.235958`)

域输入

对于每个记录,返回这三个域中最晚的日期:

MAXIMUM(采购订单日期, 发票日期, 付款日期)

高级示例

创建一个具有最小默认值的计算域

如果您有一个逾期账户表,请创建一个具有最小默认值 $1.00 的 Interest_Due 计算域:

DEFINE FIELD Interest_Due COMPUTED MAXIMUM(BALANCE * ANNUAL_RATE, 1)

如果余额乘以利率小于 1 元,则 MAXIMUM( ) 返回 1。否则,MAXIMUM( ) 返回计算出的利息额。

发现超过季度末尾的日期

要发现多个域中是否有日期超过季度末尾,请使用如下所示的表达式创建一个计算域:

DEFINE FIELD Past_Qtr COMPUTED MAXIMUM(PO_Date, Invoice_Date, Payment_Date, `20160331`)
  • 其所有日期均不晚于 2016 年 3 月 31 日的记录返回 `20160331`。
  • 具有一个或多个晚于 2016 年 3 月 31 日的记录返回这三个域中最晚的日期。

备注

数值集内小数位的工作方式

如果要比较的数值不具有相同的小数位数,则按照最大小数位数调整结果。

返回 20.400:

MAXIMUM(3.682, 10.88, 20.4)

您可以使用 DECIMALS( ) 函数调整参数的小数位数。

返回 20.40:

MAXIMUM(DECIMALS(3.682, 2), 10.88, 20.4)
ACL 脚本指南 14.1