【问题标题】:How to insert/update a partitioned table in Big Query如何在 Big Query 中插入/更新分区表
【发布时间】:2020-03-23 13:56:56
【问题描述】:

问题陈述: 我需要在按日期分区的大查询表中插入/更新几列。所以基本上我需要对每个分区日期进行必要的更改(按天完成)。
(它的会话表是通过将 GA 视图链接到 BQ 自动创建的,所以我没有手动完成分区,但它会由谷歌自动处理)。

来自google_docs的查询参考

我的查询:

我也尝试了以下方法:

有人可以帮我吗?对不起,我对 BQ 有点天真。

【问题讨论】:

    标签: google-bigquery


    【解决方案1】:

    您正在尝试插入通配符表,这是一个实际上由多个表组成的元表。通配符表是只读的,不能插入。

    【讨论】:

    • 嘿@Hua Zhang:感谢您的评论。我不知道。是否可以覆盖通配符表?场景 - 数据从 session_* 每日表复制到较小的比如说 small_subset_* 表,并且数据已经垃圾一个月了 - 所以我需要替换 small_subset_* 中 1 个月的数据?
    【解决方案2】:

    正如华所说,ga_sessions_* 不是分区表,而是代表很多表,每个表都有不同的后缀。

    你可能想这样做:

    INSERT INTO `p.d.ga_sessions_20191125` (visitNumber, visitId)
    SELECT 1, 1574
    

    【讨论】:

    • 感谢您的评论。我不知道。是否可以覆盖通配符表?场景 - 数据从 session_* 每日表复制到较小的说 small_subset_* 表并且数据已经垃圾一个月了 - 所以我需要替换 small_subset_* 中的 1 个月数据? ——
    • 你好像想问一个新的堆栈溢出问题?
    猜你喜欢
    • 2017-01-08
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多