insert select
将查询结果导入到表中
insert overwrite table dealer_leads select * from dealer_leads_tmp;
- overwrite:覆盖目标表中的原来数据,如果缺省,则是追加数据
如果插入数据的表是分区表,则表示如下
insert overwrite table dealer_leads PARTITION (dt='2016-08-31') select * from dealer_leads_tmp;
一次遍历多次插入
from dealer_action_log
insert overwrite table log1 select companyid,originalstring where companyid='100006'
insert overwrite table log2 select companyid,originalstring where companyid='10002'
当查询结果会插入多个表中时,可以采用上面语法,从而一次遍历,写入多个表。