计算公式: (SUM(expr2) - SUM(expr)2 / COUNT(expr)) / COUNT(expr) 参数说明: 参数为数值型或能通过隐式类型转换为数值型的表达式, 其他数据类型报错。 参数 为包含列的表达式且值包含null 时,null 所在的行不纳入计算。参数为null 函数返回值 为空。 使用说明: 1. 函数返回值类型为decimal; 2. 与group by 子句连用,为聚集函数。与over 子句连用,为分析函数。 举例: 下例计算1998 年每月销售的累积总体和样本变量(本例在SH 用户下运行)。 SELECT t.calendar_month_desc, VAR_POP(SUM(s.amount_sold)) OVER (ORDER BY t.calendar_month_desc) "Var_Pop", VAR_SAMP(SUM(s.amount_sold)) OVER (ORDER BY t.calendar_month_desc) "Var_Samp" FROM sales s, times t WHERE s.time_id = t.time_id AND t.calendar_year = 1998 GROUP BY t.calendar_month_desc;
(3) VAR_SAMP 功能描述: 返回一组数据的样本方差。 语法:
What’s new in GBase 8s V8.8
南大通用数据技术股份有限公司 3/60
计算公式: (SUM(expr - (SUM(expr) / COUNT(expr)))2) / (COUNT(expr) - 1) 参数说明: 参数为数值型或能通过隐式类型转换为数值型的表达式, 其他数据类型报错。 参数 为包含列的表达式且值包含null 时,null 所在的行不纳入计算。参数为null 函数返回值 为空。 使用说明: 1. 函数返回值类型为decimal; 2. 与group by 子句连用,为聚集函数。与over 子句连用,为分析函数。 举例: 下例计算1998 年每月销售的累积总体和样本变量。 SELECT t.calendar_month_desc, VAR_POP(SUM(s.amount_sold)) OVER (ORDER BY t.calendar_month_desc) "Var_Pop", VAR_SAMP(SUM(s.amount_sold)) OVER (ORDER BY t.calendar_month_desc) "Var_Samp" FROM sales s, times t WHERE s.time_id = t.time_id AND t.calendar_year = 1998 GROUP BY t.calendar_month_desc;
(4) STDDEV_POP 功能描述: 返回输入值的总体标准差。 语法:
计算公式: VAR_POP 函数值的算术平方根。 参数说明:
What’s new in GBase 8s V8.8
南大通用数据技术股份有限公司 4/60
参数为数值型或能通过隐式类型转换为数值型的表达式, 其他数据类型报错。 参数 为包含列的表达式且值包含null 时,null 所在的行不纳入计算。参数为null,函数返回 值为空。 使用说明: 1. 函数返回值类型为decimal; 2. 与group by 子句连用,为聚集函数。与over 子句连用,为分析函数。 举例: 下例返回部门的薪水值的总体标准偏差。 SELECT deptno,ename,sal,stddev_pop(sal) over (partition by deptno) AS pop FROM emp;
(5) STDDEV_SAMP 功能描述: 累积样本标准差并返回样本方差的平方根。 语法:
计算公式: VAR_SAMP 函数的算术平方根。 参数说明: 参数为数值型或能通过隐式类型转换为数值型的表达式, 其他数据类型报错。 参数 为包含列的表达式且值包含null 时,null 所在的行不纳入计算。参数为null,函数返回 值为空。 使用说明: 1. 函数返回值类型为decimal; 2. 与group by 子句连用,为聚集函数。与over 子句连用,为分析函数。 举例: 下例返回部门20、30、60 的薪水值的样本标准偏差。 SELECT deptno,ename,hiredate,sal,stddev_samp(sal) over(partition BY deptno ORDER BY hiredate rows between unbounded preceding AND
2. 与group by 子句连用,为聚集函数。与over 子句连用,为分析函数。 举例: 下例CUM_COVP 返回定价和最小产品价格的累积总体协方差。 SELECT prod_id, supplier_id, COVAR_POP(PROD_LIST_PRICE, PROD_MIN_PRICE) OVER (ORDER BY prod_id, supplier_id) AS CUM_COVP, COVAR_SAMP(prod_list_price, PROD_MIN_PRICE) OVER (ORDER BY prod_id, supplier_id) AS CUM_COVS FROM products p WHERE prod_category_id = 205 ORDER BY prod_id, supplier_id;
COVAR_SAMP(prod_list_price, PROD_MIN_PRICE) OVER (ORDER BY prod_id, supplier_id) AS CUM_COVS FROM products p WHERE prod_category_id = 205 ORDER BY prod_id, supplier_id;