2017-09-28 17 views
0

在Google Big Query中,我需要提取給定數據集中所有表的最後更新日期。所以,我需要輸出爲<<TableName>> <<Last Update Date>>Google Big Query - 如何使用SQL獲取數據集中所有表的最近更新日期

我知道如何列出表:

#standardSQL 
SELECT 
    table_id, 
    row_count 
FROM `myproject.mydataset.__TABLES__` 
WHERE table_id IN ('TABLEA', 'TABLEB', 'TABLEC') 

如何獲得最後的更新日期,而不是ROW_COUNT?

感謝

+0

是有辦法做到這一點,在命令行?或蟒蛇?我需要製作一份表格狀態報告,以顯示他們上次更新的時間。 – arcee123

回答

2

試試下面
如果我理解正確的問題 - 它你的要求和更多的

#standardSQL 
SELECT table_id, 
    DATE(TIMESTAMP_MILLIS(creation_time)) AS creation_date, 
    DATE(TIMESTAMP_MILLIS(last_modified_time)) AS last_modified_date, 
    row_count, 
    size_bytes, 
    CASE 
     WHEN type = 1 THEN 'table' 
     WHEN type = 2 THEN 'view' 
     WHEN type = 3 THEN 'external' 
     ELSE '?' 
    END AS type, 
    TIMESTAMP_MILLIS(creation_time) AS creation_time, 
    TIMESTAMP_MILLIS(last_modified_time) AS last_modified_time, 
    dataset_id, 
    project_id 
FROM `myproject.mydataset.__TABLES__` 
+0

圖例再次回答。非常感謝。 – arcee123

+0

感謝您糾正我的錯誤信息:)我們需要一個關於文檔中__TABLES__的示例......我只在[meta表主題](https://cloud.google.com)中看到了__TABLES_SUMMARY__的模式/的BigQuery /文檔/數據集#表,元表)。 –

+0

有意義。我甚至沒有注意到它沒有包含在文檔中 –

相關問題