Hive学习笔记:插入数据

日常从临时表复制数据到正式表可通过:

create table table_name_new as
select * from table_name;

但这样子原表的信息,分区等无法直接复制,需要通过额外的方式进行构建表、插入数据。

具体参考如下。

一、全量复制

drop table table_name_new;
create table if not exists table_name_new like table_name;
use data_base_name;
set hive.vectorized.execution.enabled = false;
insert overwrite table table_name_new
select * from table_name;

二、分区插入数据

-- 1.建表 4个字段
create table database_name.table_name
(
    a string,
    b string,
    c bigint
)
partitioned by (update_date int) 
row format delimited fields terminated by "\t";

-- 2.插入数据
use database_name;
set hive.exec.dynamic.partition.mode=nonstrict;
insert overwrite table table_name
partition(update_date)
select a,
       b,
       c,
       update_date
from table_name_old;
posted @   Hider1214  阅读(239)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示