我正在尝试创建累积式列但无法创建它,请看看我试图计算它。在mysql中计算累积式公式
MYTABLE
create table mytable (
TotalQuantity Decimal(7)
);
insert into mytable (TotalQuantity) values
(0.0),
(0.0),
(1.0),
(0.0),
(2.0),
(0.0),
(0.0),
(0.0),
(0.0),
(0.0),
(0.0),
(0.0),
(0.0),
(0.0),
(0.0),
(0.0),
(0.0),
(0.0),
(0.0),
(0.0),
(0.0),
(0.0),
(0.0),
(1.0),
(1.0),
(0.0),
(1.0);
基于上述数据集我想计算不同明智计数和累加和
SELECT TotalQuantity AS DistinctTotalQuantity,
COUNT(TotalQuantity) AS COUNTVALUE,
@running_total := @running_total + COUNT(TotalQuantity) AS cumulative_sum
FROM mytable
JOIN (SELECT @running_total := 0) r
GROUP BY TotalQuantity
尝试https://stackoverflow.com/questions/12668785/cumulating-value-of-current-row-sum-of-previous-rows – davidchoo12
您正在合并两种方法。既可以在子查询中进行分组,也可以在外部查询中进行变量添加,或切换到仅使用其中一种或其他方法。 – Strawberry
@ davidchoo12我怀疑OP的mysql版本是最新版本 – Strawberry