有沒有辦法僅對特定GROUP BY
列而不是所有GROUP BY
列執行彙總聚合?而不是SELECT a,b,SUM(c) FROM sample.data GROUP BY a,b
或SELECT a,b,SUM(c) FROM sample.data GROUP BY ROLLUP(a,b)
,我試圖實現SELECT a,b,SUM(c) FROM sample.data GROUP BY a, ROLLUP(b)
。這在BigQuery中可行嗎?Bigquery中的部分彙總聚合
我現在想象得到的唯一方法是爲每一列創建一個GROUPING
列,我不希望將它們捲起來,並將這些列過濾爲只有0
。但是,嘗試此操作時,我得到的錯誤是Errors encountered during job execution. Resources exceeded during query execution.
,如果不包括ROLLUP()
,我不會收到該錯誤。 (即使與同樣錯誤。)
想法?
那麼我想你首先需要解決你的「資源超過...」問題。這在我看來就像是一個單獨的問題,你應該專注於通過事物來呈現你的實際查詢。只是建議... –
只有在「GROUP BY」中使用「ROLLUP()」時纔會出現「資源超出」錯誤。沒有「ROLLUP()」,查詢正常執行。我在5個不同列上的實際查詢組只需要在其中一個上滾動。我認爲在5個不同的列(而不是1)上滾動的複雜性增加了這個錯誤,這就是爲什麼我想知道是否有辦法只在一列上滾動 – blah
得到它 - 我被你的陳述困惑了 - 「(即使與GROUP EACH BY同樣錯誤)」 –