【问题标题】:How to take some data from one partition in the BigQuery table and insert to the next partition?如何从 BigQuery 表的一个分区中获取一些数据并插入到下一个分区?
【发布时间】:2020-02-21 13:51:58
【问题描述】:

我有一个包含每日分区的 Big Query 表

现在问题出在其中一个分区,即本月的最后一个分区(例如:2019-12-31)我有一些数据应该属于下一个分区,即 2020-01-01。

我想知道是否可以使用 Big Query SQL 从我的分区 2019-12-31 中取出该数据并将其放入下一个分区 2020-01-01 中?还是我必须为它创建一个 Beam 作业?

【问题讨论】:

    标签: google-bigquery data-partitioning


    【解决方案1】:

    是的,使用 DML。 UPDATE 语句将行从一个分区移动到另一个分区。 使用 DML 更新分区表中的数据与更新非分区表中的数据相同。

    For example,下面的 UPDATE 语句将行从一个分区移动到另一个分区。 mytable 2017 年 5 月 1 日分区(“2017-05-01”)中 field1 等于 21 的行被移动到 2017 年 6 月 1 日分区(“2017-06-01”)。

    UPDATE 
    project_id.dataset.mycolumntable
    SET
    ts = "2017-06-01"
    WHERE
    DATE(ts) = "2017-05-01"
    AND field1 = 21
    

    【讨论】:

      猜你喜欢
      • 2018-11-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多