RangeMode  - 脚本和图表函数
                RangeMode() 用于查找表达式或字段中最常出现的值(即模式值)。
语法:
RangeMode(first_expr {, Expression})
返回数据类型: 数字
参数:
该函数的参数可能包含内部记录函数,并在其内部返回一系列值。
| 参数 | 说明 | 
|---|---|
| first_expr | 表达式或字段包含要度量的数据。 | 
| Expression | 可选表达式或字段包含要度量的数据范围。 | 
限制:
如果多个值共享最高频率,则返回 NULL。
示例和结果:
| 示例 | 结果 | 
|---|---|
| RangeMode (1,2,9,2,4) | 
                                 返回 2  | 
                        
| RangeMode ('a',4,'a',4) | 
                                 返回 NULL  | 
                        
| RangeMode (null( )) | 
                                 返回 NULL  | 
                        
示例:
将示例脚本添加到应用程序并运行。要查看结果,将结果列中列出的字段添加到应用程序中的工作表。
RangeTab3:
LOAD recno() as RangeID, RangeMode(Field1,Field2,Field3) as MyRangeMode INLINE [
Field1, Field2, Field3
10,5,6
2,3,7
8,2,8
18,11,9
5,5,9
9,4,2
];
结果列表显示了为表格中的每条记录返回的 MyRangeMode 值。
| RangeID | MyRangMode | 
|---|---|
| 1 | - | 
| 2 | - | 
| 3 | 8 | 
| 4 | - | 
| 5 | 5 | 
| 6 | - | 
带有表达式的示例:
RangeMode (Above(MyField,0,3))
返回在当前行和当前行上方两行中评估的三个 MyField 字段结果中最常出现的值。通过指定第三个参数作为 3,Above() 函数会返回三个值,如果上方有足够的行,会将其作为 RangeMode() 函数的输入。
示例中所使用的数据:
RangeTab:
LOAD * INLINE [
MyField
10
2
8
18
5
9
] ;
提示注释禁用 MyField 排序可确保示例符合预期。
                | MyField | RangeMode(Above(MyField,0,3)) | 
|---|---|
| 10 | 返回 10,因为上面没有行,因此单个值是最常出现的。 | 
| 2 | - | 
| 8 | - | 
| 18 | - | 
| 5 | - | 
| 9 | - |