如何在BigQuery中轻松制作一个空表来复制现有表的架构?

Tai*_*chi 1 google-bigquery

我有一个名为的表dataset.table_20180801,想要创建一个新的空表dataset.table_20180901,该表具有与相同的架构dataset.table_20180801。我想知道在BigQuery中最简单的方法。

我可以使用BigQuery网络控制台的来复制表格copy table,但它也可以复制记录。

我认为一种更简单的方法是首先使用

bq show --schema --format=prettyjson dataset.table_20180801 > ~/Desktop/foo_bar_schema.json
Run Code Online (Sandbox Code Playgroud)

然后用它做一张桌子。(我想知道这是否正确)

bq mk --table dataset.table_20180901 ~/Desktop/foo_bar_schema.json
Run Code Online (Sandbox Code Playgroud)

但是这种方式还不够容易。

有没有更简单的方法来复制架构?

Pen*_*m10 7

您可以使用DDL

CREATE TABLE dataset.table_20180901 AS
SELECT *
FROM dataset.table_20180801
LIMIT 0
Run Code Online (Sandbox Code Playgroud)

这里limit 0是关键,它不会产生成本,并且表将被创建为空