选择性足以在HIVE中仅考虑文件中的少数值

时间:2014-04-14 18:24:28

标签: hadoop hive

在HIVE中,我们是否有足够的选择性来考虑文件中的少数几个值?

例如: -

输入文件: -

汤姆,3654,IT,$ 300 阿尔贝3454,制造,$ 600 哈利,2332,运动员,$ 700

我需要创建一个外部表,我只需要考虑几个字段。请找到我需要考虑的以下字段。

3654,300 $ 3454,600 $ 2332,700 $

我的外部表只应包含上述值,其他值应省略。可以通过HIVE来实现吗?

请帮助....

1 个答案:

答案 0 :(得分:0)

没有OOTB功能可以使用AFAIK。作为一种解决方法,您可以创建2个表,将输入文件加载到第一个表中,从中选择所需的字段并将它们插入到第二个表中。像这样:

  

蜂房>创建外部表t1(c1字符串,c2字符串,c3字符串,c4   string,c5 string,c6 string,c7 string,c8 string,c9 string,c10   字符串)行格式分隔的字段由','终止地点   ' /输入&#39 ;;

     

蜂房> create table t2(c1 string,c2 string,c3 string,c4 string);

     

蜂房>插入表t2选择c2,concat_ws("",split(c4,'   ')[0],c5),concat_ws("&#34 ;, split(c7,'')[0],c8),c1来自t1;

     

蜂房> select * from t2;