【发布时间】:2020-07-24 13:23:49
【问题描述】:
我有这张表,我想为几行添加“更改”列的值(或者,更准确地说,从“ne”值为零的行到下一行,其中包括零'ne' (不是第二个本身))。 任何答案将不胜感激。
┌─rn─┬───────date─┬─ne─┬───────change─┐
│ 0 │ 2008-12-07 │ 0 │ -10330848398 │
│ 1 │ 2009-04-14 │ 1 │ -61290 │
│ 2 │ 2009-04-26 │ 1 │ 9605743360 │
│ 3 │ 2013-07-06 │ 0 │ -32028871920 │
│ 4 │ 2014-01-12 │ 1 │ -42296164902 │
│ 5 │ 2015-06-08 │ 1 │ 59100383646 │
└────┴────────────┴────┴──────────────┘
我们期望的结果是这样的。
row start end sum(change)
--------------------------------------------------
0 | 2008-12-07 | 2009-04-26 | -725,166,328
--------------------------------------------------
1 | 2013-07-06 | 2015-06-08 | -15,224,653,176
--------------------------------------------------
【问题讨论】:
-
您要插入行还是要更新?
-
请以表格形式向我们展示您期望的结果。
-
我编辑了我的问题,现在您可以看到我们的期望了。 @GMB
-
我们的首要任务是解决 clickhouse 中的这一挑战。但如果您在 sql 中有任何解决方案,它可能会提供信息。 @NeutralHandle
-
这通常由window functions 处理,但clickhouse 似乎缺少它们。
标签: sql date group-by gaps-and-islands clickhouse