MEDIANOF
简述
返回表达式中所有值的中值,中值是在一组数据中居于中间的数,即在这组数据中,有一半的数据比它大,有一半的数据比它小。如果参数集合中包含偶数个数字,函数 MEDIANOF 将返回位于中间的两个数的平均值。
MEDIANOF (Expression:TExpression[;BoolConditionExp:TExpression[;N:Integer[;MovingFirst:Bool[;CacheId:String]]]]] ) :real
名称 | 类型 | 说明 |
---|
Expression | TExpression | Expression 是数字类型的表达式。参见多字段聚集。可在表达式前加关键字DISTINCT,表示不管该值出现了多少次,只使用每个值的唯一实例。不添加即统计所有。 |
BoolConditionExp | TExpression | 布尔型表达式,如果存在该参数,则统计内容为该表达式为真的行,否则统计所有。 |
N | integer | 整数,如果没有N参数,则统计对象为全部,否则统计对象为满足条件的从当前行起往前总共的N条记录, 如果为负数,则为从当前起往后总共|N|行。 |
MovingFirst | Boolean | 布尔型,为真表示统计内容为最近N条内符合BoolConditionExp条件的,为假表示统计内容为最近N条符合BoolConditionExp条件的。省略的时候具体默认值由SelectOpt来决定,参见:SELECTOPT(Options)。 |
CacheId | String | 字符串型,缓存标识串,参见:SQL时间序列统计缓存标志与性能加速 |
返回 | real | Real。 |
Table1 := Array(
('A':5,'B':20,'C':34),
('A':5,'B':20,'C':34),
('A':9,'B':20,'C':34),
('A':7,'B':18,'C':34));
Return VSelect MEDIANOF ( ['A']) from Table1 end;//返回6