【发布时间】:2021-01-29 10:47:33
【问题描述】:
说,我们有一张桌子testint。
SELECT *
FROM testint
┌─f1─┬─f2─┐
│ 2 │ 3 │
│ 2 │ 3 │
│ 4 │ 5 │
│ 4 │ 5 │
│ 6 │ 7 │
│ 6 │ 7 │
└────┴────┘
我们尝试用sumState()查询runningAccumulate()。
SELECT runningAccumulate(col)
FROM
(
SELECT sumState(f1) AS col
FROM testint
GROUP BY f1
)
┌─runningAccumulate(col)─┐
│ 8 │
│ 12 │
│ 24 │
└────────────────────────┘
为什么响应中的第一行是8,而不是4?如果我们按 f1 分组,第一行似乎是 4(我们确实在 f1 列中将第一行 2 和第二行 2 相加)。
【问题讨论】:
标签: clickhouse