从多个表插入到单个表中

ymzxtsji  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(265)

我在查询中定义了多个别名,我想将每个别名的结果写入表中 tab_1 . 但是当我运行下面的查询时,我得到一个错误
“tab\u 1”附近的“insert”缺少eof
我写对了吗?有人能验证一下语法或者告诉我怎么写吗?请确认我在正确的地方放了逗号。谢谢你的帮助。

func_1 as
( .....),

func_2 as
(.....),

func_3 as
(....),

INSERT INTO TABLE tab_1 select * from func_1,

INSERT INTO TABLE tab_1 select * from func_2,

INSERT INTO TABLE tab_1 select * from func_3;
11dmarpk

11dmarpk1#

使用此模板:

with  
func_1 as ( .....),
func_2 as (.....),
func_3 as (....)
INSERT INTO TABLE tab_1 
select * from func_1
   union all  
select * from func_2  
   union all 
select * from func_3;

中的子查询 union all 将并行执行。
对这句话的解释计划,它似乎工作正常:

with func_1 as
( select * from default.dual),
func_2 as
(select * from default.dual)
insert into table default.dual
select * from func_1
union all 
select * from func_2

相关问题