Google bigquery 将查询结果保存到分区的bigquery表中

Google bigquery 将查询结果保存到分区的bigquery表中,google-bigquery,Google Bigquery,我想将bigquery查询的结果保存到分区表中,这可能吗?当我试图保存时,我没有将其视为一个选项。将数据插入分区表与将数据插入非分区表是一样的。您只需设置按所需方式分区的目标表 注意,若您使用的是Web UI,则无法从查询结果创建分区表 但您可以使用CLI执行此操作,例如: bq-location=[location]query-destination\u table[PROJECT\u ID]:[DATASET].[table]-时间分区\u字段[COLUMN]-使用\u legacy\u s

我想将bigquery查询的结果保存到分区表中,这可能吗?当我试图保存时,我没有将其视为一个选项。

将数据插入分区表与将数据插入非分区表是一样的。您只需设置按所需方式分区的目标表 注意,若您使用的是Web UI,则无法从查询结果创建分区表

但您可以使用CLI执行此操作,例如:


bq-location=[location]query-destination\u table[PROJECT\u ID]:[DATASET].[table]-时间分区\u字段[COLUMN]-使用\u legacy\u sql=false'[query]'

标准sql和DML:

INSERT INTO `project.dataset.table` (field1, field2, field3)
SELECT *
FROM `anothertable`
WHERE 'this is my query'
如果表已经被一个字段分区,那么一切都将按预期工作

如果要将其添加到新表中:

CREATE TABLE `project.dataset.table`
PARTITION BY DATE(timestamp)
AS
SELECT field1, field2, field3, timestamp
FROM `yourtable`
WHERE 'yourquery'

对于现有分区表,还是新表?对于新表,我将使用下面建议的Insert into select from。我之前试图从UI中执行此操作。这不会创建分区表-您需要预先创建它-或使用CLI-请参阅我的回答DML也会创建表-请参阅更新:当然,DDL也会制作一个技巧:o