SQL(Snowflake)-SUMIFS,但在多列条件中为该行设置了条件

问题描述 投票:0回答:1

我有一张桌子

|---------------------|------------------|-----------|
|      Live-Date      |     Live_Cohort  | Unit_Count| Desired_Output (Weighting of Unit Count)
|---------------------|------------------|-----------|
|         3/1/19             Q1 2019            5          56%
          3/1/19             Q1 2019            4          44%
          4/1/19             Q1 2019            3          100%
          4/1/19             Q2 2019            4          29%
          4/1/19             Q2 2019            10         71%

我如何编写一个在excel中充当sumifs函数的查询,该查询将计算每行中单位计数的权重以及与该行中live_date和live_cohort相匹配的总单位数。

例如,在第1行中,在生效日期3/1/19和Q1 / 2019中,5个单位占总单位的56%,并按期望输出列中的每一行进行操作

sql snowflake-datawarehouse sumifs
1个回答
0
投票

我认为您需要窗口功能:

select t.*,
       units_count * 100.0 / sum(units_count) over (partition by live_date, live_cohort) as percentage
from t;
© www.soinside.com 2019 - 2024. All rights reserved.