SQL进阶的技巧:如何实现某列的累计乘积?
目录
0 场景描述
1 数据准备
2 问题分析
3 完全情况查询
4 小结
0 场景描述
在做数据处理的时候,尤其是复利累积的时候,有时候会有这样一场景,通过某种条件找到一列数据[X1,X2,X3...Xn],然后想要求y=X1X2X3...Xn。下面给出一个具体案例来详细解释这一问题,如下图所示,每个组的name值只有2个(2个A/B/C),当name=A or C时,price为value字段的乘积,当name=B时候,price为vlaue字段的和。
1 数据准备
create table multi_value as
(
select stack(
13,
'A',2,'甲',
'B',5,'甲',
'C&