@songlaf
2016-05-19T10:23:55.000000Z
字数 1545
阅读 853
北风网大数据培训
LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)]
*数据源是否在本地(hive所在的linux服务器系统)
--local
--HDFS
*是否需要覆盖目标数据表
--overwrite
--默认是append
*是否是分区表
--partition
如下的表
create table user(id string,name string)partitioned by (Sex string,Age string)row format delimited fields terminated by ',';
load data local inpath "/home/sjf/userlist.txt" into table user partition(sex='F',age=21);
#上传文件到hdfsbin/hdfs dfs -put /home/sjf/userlist1.txt /input/userlist1.txt#导入文件load data inpath "/input/userlist1.txt" into table user partition(sex='F',age=22);
load data local inpath "/home/sjf/userlist3.txt" overwrite into table user partition(sex='F',age=27);
create table user_backup as select * from user;
create table user_temp like user;insert into table user_temp partition(sex='F',age=22) select id,name from user where age = 22 and sex='F';
#新建一个文本文件wu.txt,内容如下:1,诸葛亮2,黄忠3,糜芳4,张苞#上传文件到hdfsbin/hdfs dfs -mkdir /user/hive/warehouse/db_s9.db/wubin/hdfs dfs -put /home/sjf/wu.txt /user/hive/warehouse/db_s9.db/wu#创建表,指定location为/user/hive/warehouse/db_s9.db/wucreate table wu(id string,name string)row format delimited fields terminated by ','location '/user/hive/warehouse/db_s9.db/wu';
查询结果

insert overwrite local directory '/home/sjf/wu' row format delimited fields terminated by ',' select * from wu ;
查看结果
(2)导出到HDFS
#建立到处目录bin/hdfs dfs -mkdir /output1#导出数据insert overwrite directory '/output1' select * from wu;
查看结果
(3)hive -e
hive -e 'select * from wu' >> 1.txt