[英]GBQ SQL: For each unique value in Column A, if value 'X' appears in Column B…then create new Column C with value 'Y', else 'N'
[英]SQL For each unique value in Column A, sum Column B. If sum is greater than 50, create Column C and add value “Y”, else “N”
看起來很簡單,但我似乎無法理解它。 我有下表。
ID Total
1 20
1 30
1 30
2 10
2 10
對於“ID”列中的每個唯一值,我想要“總”列的總和。 如果總和大於 50,則創建新列“結果”並添加值“Y”,否則添加值“N”。
結果應該是這樣的。 是的,我想保留每一行。
ID Total Result
1 20 Y
1 30 Y
1 30 Y
2 10 N
2 10 N
我被困住了......
使用 window 函數:
select t.*,
(case when sum(total) over (partition by id) >= 50 then 'Y' else 'N' end)
from t;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.