4

Clickhouse 让我们深受鼓舞。然而,当我们试图将所有现有脚本移植到 Clickhouse 时,我们遇到了一些障碍。例如: CUMULATIVE SUM or RUNNING TOTAL。我们正在尝试找到等效的窗口函数,例如SUM(SALES) OVER (PARTITION BY PRODUCT ORDER BY SALES)

  • 有没有办法获得累积和或运行总计。非常感谢任何输入或指导。谢谢!


  • 这是我关于 Clickhouse(又是一个很棒的数据库)的第二个问题。我们必须移植计算"Percent to total".

    例如

    Product | Sales
    
    P1  100 
    
    P2  200
    
    P3  150
    
    P4  50
    

    我们正在考虑编写一个可以填充的脚本

    Product, Sales, PercenttoTotal
    
    P1, 100, 20%
    
    P2, 200, 40%
    
    P3, 150, 30%
    
    P4, 50,  10%
    

    有没有一种通过 Clickhouse 中的各种功能的快速方法,我们可以使用它来完成此操作。提前致谢。

  • 4

    1 回答 1

    6

    占总数的百分比

    SELECT 
       productid,
       count() as per_product_count,
       per_product_count * 100 / ( SELECT count() from prod_sales ) as percent_to_total
    FROM prod_sales
    GROUP BY productid
    

    累计或累计

    最新版本 (v1.1.54310-stable) 添加了对 runningIncome 函数(尚未记录)的支持,该函数应该像 runningDifference 一样工作,但应该计算总和而不是差值。

    还可以在 github 上查看我对这个问题的回答:

    于 2017-11-28T12:06:27.130 回答