从配置单元中的orc snappy表中选择行

polhcujo  于 2021-05-27  发布在  Hadoop
关注(0)|答案(2)|浏览(409)

我已经创建了一个表employee\u orc,它是带有snappy压缩的orc格式。

create table employee_orc(emp_id string, name string)
 row format delimited fields terminated by '\t' stored as orc tblproperties("orc.compress"="SNAPPY");

我已使用insert语句将数据上载到表中。

employee_orc table has 1000 records.

当我运行下面的查询时,它会显示所有记录

select * from employee_orc;

但是当运行下面的查询时,即使记录存在,也显示零结果。

select * from employee_orc where emp_id = "EMP456";

为什么我无法从employee\u orc表中检索单个记录?

b1payxdu

b1payxdu1#

就我而言,我不明白你为什么要在orc中指定分隔符。你混淆了csv和orc还是外部vs管理?我建议您以不同的方式创建表
创建表employee\u orc(emp\u id string,name string)存储为orc tblproperty(“orc.compress”=“zlib”);

rfbsl7qr

rfbsl7qr2#

记录不存在。你可能认为他们是一样的,因为他们看起来一样,但有一些不同。一种可能是字符串开头或结尾的空格。为此,您可以使用 like :

where emp_id like '%EMP456%'

这也许对你有帮助。

相关问题