GBase 8a
其他
文章

V953.28版本开始新增函数——移动差分mdiff函数介绍

发表于2025-09-23 09:27:4466次浏览4个评论
  • 移动差分函数mdiff函数可根据指定的排序规则进行排序,对排序后的结果集,计算指定列中当前行和前面n行的差值。 
  • 计算时,如果前面不够n行,返回空值(null)。 
  •  如果指定列的字段为数值型,则函数返回值与指定列的字段类型和格式一致,如计算结果超过当前类型的范围,处理规则与8a中系统函数lag()保持一致。 

常用场景举例如下: 

显示item 10基于3天宽度的移动差分值。 

Mdiff列的值表示某日销售额与本行之前第n行销售额的差。 

MDIFF语法: MDIFF(colname , n , sortlist) 

使用限制: 

不能出现在WHERE子句的搜索条件中。 

不能作为聚集函数的参数。

不得在HAVING子句中使用。 

不得在GROUP BY LIST中使用。

不能嵌套在其他OLAP移动函数内部和其他非group by函数内部。 

不得在DELETE和UPDATE语句的非查询部分使用。 

 

评论

登录后才可以发表评论
嗷呜一口仙贝发表于 10个月前
赞,学习一下
枫溪发表于 10个月前
赞,学习一下
曾云林发表于 2个月前
向大佬学习
GBase用户51890发表于 2个月前
加油