2017-02-07 52 views
0

我需要從分區表中選擇行並將結果保存到另一個表中,我如何保持記錄'__PARTITIONTIME與它們在源表中相同?我的意思是,不僅要保留__PARTITIONTIME的值,還要保留整個分區功能,以便我可以使用時間裝飾和類似的東西對目標表執行進一步的查詢。Bigquery - 如何保留目標表中的分區

(我使用的筆記本電腦Datalab)

%%sql -d standard --module TripData 
SELECT 
    HardwareId, 
    TripId, 
    StartTime, 
    StopTime 
FROM 
    `myproject.mydataset.TripData` 
WHERE 
    _PARTITIONTIME BETWEEN TIMESTAMP_TRUNC(TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 * 24 HOUR),DAY) 
    AND TIMESTAMP_TRUNC(CURRENT_TIMESTAMP(),DAY) 

回答

0

你不能一次爲多個分區,做到這一點!
你應該做一個分區在同一時間,指定目標分區 - targetTable$yyyymmdd
注意:首先,您需要創建目標表的分區表與相應的架構

+0

很好,那是再繁瑣的工作。這個功能的未來計劃? – foxwendy

+0

同意。讓我們看看谷歌團隊會告訴我們什麼。同時,您可以通過https://code.google.com/p/google-bigquery/ –

+0

將此功能作爲功能請求保留。是的,Google認識到這確實是一種繁瑣(而且代價高昂)的解決方法,並計劃在未來解決它。 –

相關問題