您可以在Google Big查询中使用一个查询创建多个表吗?

时间:2018-03-07 09:31:24

标签: sql google-bigquery

New create table feature has been released我想知道是否可以使用一个查询创建2个或更多表。

我试过,但它返回错误

  

错误:语法错误:[8:1]

处的意外关键字CREATE
 #standardSQL
 CREATE OR REPLACE TABLE newtables_test.cg1_uk
 OPTIONS(
   description="blah blah blah"
 ) AS 
select 'x' as y;

CREATE OR REPLACE TABLE newtables_test.cg1_uk2 
as
select 'y' as x 

有什么想法吗?它甚至可能吗?

谢谢!

2 个答案:

答案 0 :(得分:2)

根据您问题中的文档链接:

  

只允许一个CREATE语句。

所以,看起来你不能。也许其他人有诀窍/解决方法,但我不知道。

答案 1 :(得分:1)

2 年后,仍然无法在一个语句中运行多个 CREATE TABLE。文档仍然列出“CREATE TABLE 语句必须符合以下规则:只允许一个 CREATE 语句。” https://cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language

但是有一个解决方案。使用终止分号 ( ; ) 分隔 CREATE TABLE 语句。示例:

CREATE TABLE new_table_a AS SELECT id, c1, c2, c3 FROM t1;
CREATE TABLE new_table_b AS SELECT id, c4, c5, c6 FROM t1;
SELECT [...]