hive解决加载数据后查询数据显示为NULL的问题

数据准备:

dept.txt:

10        ACCOUNTING        1700

20        RESEARCH        1800

30        SALES        1900

40        OPERATIONS        1700

建表语句:

create table if not exists dept(
deptno int,
dname string,
loc int
)
row format delimited fields terminated by 't';

加载数据:

load data local inpath '/opt/module/datas/dept.txt' into table dept;

查询结果:

hive解决加载数据后查询数据显示为NULL的问题_第1张图片

解决步骤:

1.检查dept.txt数据文本格式,是不是以tab分隔的,为了以防万一,我把数据重新写了一遍,并把表删除后重新建表,加载了一遍,发现问题依然存在。

2.如果文本数据没有问题,接下来检查自己的sql语句是不是正确。发现sql语句的‘\t’少了个反斜杠(‘t’改成'\t'),重新删表建表加载数据就可以了。还真是粗心大意啊。

总结:

一般出现这种问题,一就是检查自己的数据格式是不是和自己写的sql分隔符一样,你不能写的sql语句是逗号或空格的,数据里是tab制表符。二就是检查sql语句,分隔符是否写对。

 

你可能感兴趣的:(hive,hive)