[英]Add a column with count and sum by specific group in SQL
我有一個如下所示的數據集:
Dataset_1
Date Var1 Var2 Var3 Var4 Metric_A Metric_B
10/1/19 NULL NULL NULL A 10 NULL
10/1/19 NULL NULL AB A NULL 70
10/1/19 NULL NULL NULL B 60 NULL
10/2/19 NULL A AC B 100 NULL
如何在不更改列結構的情況下按組(日期、Var1、Var2、Var4)和同一組中度量 A 的總和作為單獨的列? 我只想將這兩列添加到當前數據集的末尾
我預期的 output 如下:
Date Var1 Var2 Var3 Var4 Metric_A Metric_B COUNT_Var SUM_A
10/1/19 NULL NULL NULL A 10 NULL 2 10
10/1/19 NULL NULL AB A NULL 70 2 10
10/1/19 NULL NULL NULL B 60 NULL 1 60
10/2/19 NULL A AC B 100 NULL 1 100
我的嘗試將低於但沒有奏效:
SELECT *,
COUNT(*) OVER (PARTITION BY Date, Var1, Var2, Var4),
SUM(A) OVER (PARTITION BY Date, Var1, Var2, Var4)
FROM Dataset_1
根據您的數據, var4
正在定義組,僅此而已:
SELECT d.*,
COUNT(*) OVER (PARTITION BY Var4),
SUM(A) OVER (PARTITION BY Var4)
FROM Dataset_1 d
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.