hive 向表中導入數據時忽略首行


問題

在使用load data inpathCSV文件導入到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')

  • 已建表執行

    alter table hive_movies set TBLPROPERTIES ('skip.header.line.count'='1');
    
  • 新建表

    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');	
    
  • 重新執行數據導入

    load data inpath '/input/movies.csv' overwrite into table hive_movies;
    

    注:執行load data inpath時,原文件會被刪除

  • 效果
    在這里插入圖片描述


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM