- 1.创建一张临时表,分区字段类型为date,其他和原始表一样
CREATE TABLE `smartdb`.`smart_company_daily_dws_temp`(
`parent_company_name` string COMMENT '父服务单位名称',
`company_name` string COMMENT '服务单位名称',
`source` string COMMENT '来源',
`ask_cnt` bigint COMMENT '提问总数',
`session_cnt` bigint COMMENT '会话总量',
`valid_session_cnt` bigint COMMENT '机器人有效会话数',
`robot_self_session_cnt` bigint COMMENT '机器人独立接待数',
`robot_self_percent` double COMMENT '机器人独立接待率',
`evaluate_cnt` bigint COMMENT '评价数',
`evaluate_percent` double COMMENT '评价率',
`solved_cnt` bigint COMMENT '解决数',
`solved_percent` double COMMENT '解决率',
`robot_service_percent` double COMMENT '机器人业务承担率')
PARTITIONED BY (
`dt` date)
ROW FORMAT SERDE
'org.apache.hadoop.hive.ql.io.orc.OrcSerde'
STORED AS INPUTFORMAT
'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat';
insert into table smartdb.smart_company_daily_dws_temp partition(dt)
select
parent_company_name
,company_name
,source
,ask_cnt
,session_cnt
,valid_session_cnt
,robot_self_session_cnt
,robot_self_percent
,evaluate_cnt
,evaluate_percent
,solved_cnt
,solved_percent
,robot_service_percent
,dt
from smartdb.smart_company_daily_dws;
drop table smartdb.smart_company_daily_dws;
ALTER TABLE smartdb.smart_company_daily_dws_temp RENAME TO smartdb.smart_company_daily_dws;