Chinaunix首页 | 论坛 | 博客
  • 博客访问: 325578
  • 博文数量: 87
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 727
  • 用 户 组: 普通用户
  • 注册时间: 2014-11-27 15:56
个人简介

开心了, 就笑;不开心了,就过会儿再笑。。。。

文章分类

全部博文(87)

文章存档

2017年(16)

2016年(28)

2015年(33)

2014年(10)

我的朋友

分类: 大数据

2017-04-18 16:26:02

在hive里建表如下:
CREATE TABLE `sor`(
  `id` int, 
  `age` int, 
  `name` string, 
  `tel` string)
ROW FORMAT DELIMITED 
  FIELDS TERMINATED BY '\t' 
  LINES TERMINATED BY '\n' 
STORED AS textfile

在本系统里写个文件(列分割\t)
 ~]$ cat sor
5     23     tom     123456789
6     24      jim     234567890
7     36     jany     536278493
4     26     meray     049784237

进入到hive,将本地的文件导入hive表中
 > load data local inpath 'sor' into table sor;
Loading data to table cnntest.sor
OK
Time taken: 0.582 seconds

hive> select * from sor;
OK
5 23 tom 123456789
6 24 jim 234567890
7 36 jany 536278493
4 26 meray 049784237
NULL NULL NULL NULL
文件里多了空行,这里多了一行null

解决:

hive> select * from sor where id is null;
OK
NULL NULL NULL NULL
NULL NULL NULL NULL
Time taken: 0.274 seconds, Fetched: 2 row(s)

insert overwrite table sor select * from sor where id is not null;   //覆盖之前表里的数据

hive> select * from sor;
OK
5 23 tom 123456789
6 24 jim 234567890
7 36 jany 536278493
4 26 meray 049784237



阅读(7834) | 评论(0) | 转发(0) |
0

上一篇:Hive四种数据导入方式

下一篇:Hive HQL练习

给主人留下些什么吧!~~