问题
在使用 load data inpath
将 CSV
文件导入到 hive
表时,发现列头被当做数据导入到 hive
表中,如下图:

; 原数据格式

hive建表语句
create table hive_movies
(
rank int,
src string,
name string,
box_office string,
avg_price int,
avg_people int,
begin_date string
) row format delimited fields terminated by ',';
导入数据
load data inpath '/input/movies.csv' overwrite into table hive_movies;
数据展示

; 解决方案
向表中load数据过滤首行
TBLPROPERTIES ('skip.header.line.count'='1')
- 已建立表执行
[En]
* established table execution
alter table hive_movies set TBLPROPERTIES ('skip.header.line.count'='1');
- 新表
[En]
* New table
create table hive_movies( rank int, src string, name string, box_office string, avg_price int, avg_people int, begin_date string) row format delimited fields terminated by ','TBLPROPERTIES ('skip.header.line.count'='1');
- 重新执行数据导入
[En]
* re-perform data import
load data inpath '/input/movies.csv' overwrite into table hive_movies;
注:执行
load data inpath
时,原文件会被删除
* 效果[En]
* effect
Original: https://www.cnblogs.com/gmhappy/p/13457016.html
Author: 疯狂的小萝卜头
Title: hive 向表中导入数据时忽略首行
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/6849/
转载文章受原作者版权保护。转载请注明原作者出处!