2012-10-02 19 views
0

我試圖運行一個簡單的查詢,但我得到的錯誤response too large to return如何返回我的大型Google BigQuery v2響應?

SELECT ACCNO,年,月,COUNT(*)作爲CNT
FROM eric.accesslogs_tbl
GROUP BY登錄號,一年,月
ORDER BY cnt,年,月限1000;

我的數據表統計:

檯面尺寸:64.7 GB
行數:59971371

是否有它的解決方法?否則,我們不能使用它。

+0

查詢試圖返回多少行? – Wug

回答

2

您正在觸及的限制不是您可以返回的行數,限制是GROUP BY操作在內部使用的數據量。

有一個實驗性功能,可以讓您刪除此限制:嘗試使用​​而不是GROUP BY

或者,您可以使用TOPfunction而不使用實驗功能來做到這一點。你的情況下,使TOP有點麻煩,因爲你想爲三個不同領域的頂級效果,但你們可以一起將它們連接起來:

SELECT TOP(acct_month, 1000), COUNT(*) AS cnt FROM (
    SELECT CONCAT(CONCAT(CONCAT(CONCAT(
     STRING(accno), '-'), STRING(year)), '-'), STRING(month)) 
     AS acct_month 
    FROM eric.accesslogs_tbl) 

結果將是一個有點靠不住,因爲他們將有一個單場ACCNO歲的一個月。