3
還有一個類似的問題(Is BigQuery ROLLUP supports grouping by repeated fields),但它沒有一個例子。是否有可能計算BigQuery中重複字段w/rollup的總計?
考慮下面的代碼:
SELECT user_segments AS user_segments,
SUM(impressions) AS imps,
SUM(clicks) AS clicks,
FROM [theTable]
GROUP BY ROLLUP (user_segments)
ORDER BY imps DESC
LIMIT 1000
凡theTable包含印象和兩個用戶的點擊(表僅具有10行,和展示= 1上的每個列):
{"impressions": 1, "user_segments": [0, 1], "user_id": "A0", "clicks": 0}
{"impressions": 1, "user_segments": [1, 2], "user_id": "A1", "clicks": 1}
{"impressions": 1, "user_segments": [0, 1], "user_id": "A0", "clicks": 2}
{"impressions": 1, "user_segments": [1, 2], "user_id": "A1", "clicks": 0}
{"impressions": 1, "user_segments": [0, 1], "user_id": "A0", "clicks": 1}
{"impressions": 1, "user_segments": [1, 2], "user_id": "A1", "clicks": 2}
{"impressions": 1, "user_segments": [0, 1], "user_id": "A0", "clicks": 0}
{"impressions": 1, "user_segments": [1, 2], "user_id": "A1", "clicks": 1}
{"impressions": 1, "user_segments": [0, 1], "user_id": "A0", "clicks": 2}
{"impressions": 1, "user_segments": [1, 2], "user_id": "A1", "clicks": 0}
查詢輸出是:
user_segments imps clicks
null 20 18
1 10 9
2 5 4
0 5 5
但是表格中只有10(10!)個展示。在我看來,總數的正確值爲:
user_segments imps clicks
null 10 9
1 10 9
2 5 4
0 5 5
有什麼方法可以得到正確的總數w/o單獨的查詢嗎?謝謝!
下面