在配置单元中,我们是否可以有足够的选择性,只考虑文件中的几个值?例如:-输入文件:-汤姆,3654,it,300美元艾伯特,3454,制造业,600美元哈里,2332,运动员,700$我需要创建一个外部表,只需要考虑几个字段。请找到下面我需要考虑的领域。3654,300$ 3454,600$ 2332,700$我的外部表应该只包含上述值,其他值应该省略。它能通过Hive实现吗?请帮忙。。。。
wztqucjr1#
没有ootb特性允许这样做,afaik。作为一种解决方法,您可以创建两个表,将输入文件加载到第一个表中,从中选择所需的字段并将它们插入到第二个表中。像这样:配置单元>创建外部表t1(c1字符串、c2字符串、c3字符串、c4字符串、c5字符串、c6字符串、c7字符串、c8字符串、c9字符串、c10字符串)行格式分隔字段,以“,”location“/inputs”结尾;配置单元>创建表t2(c1字符串、c2字符串、c3字符串、c4字符串);配置单元>插入表t2从t1中选择c2、concat\u ws(“,split(c4,”)[0],c5)、concat\u ws(“,split(c7,”)[0],c8),c10;Hive>从t2选择*;
1条答案
按热度按时间wztqucjr1#
没有ootb特性允许这样做,afaik。作为一种解决方法,您可以创建两个表,将输入文件加载到第一个表中,从中选择所需的字段并将它们插入到第二个表中。像这样:
配置单元>创建外部表t1(c1字符串、c2字符串、c3字符串、c4字符串、c5字符串、c6字符串、c7字符串、c8字符串、c9字符串、c10字符串)行格式分隔字段,以“,”location“/inputs”结尾;
配置单元>创建表t2(c1字符串、c2字符串、c3字符串、c4字符串);
配置单元>插入表t2从t1中选择c2、concat\u ws(“,split(c4,”)[0],c5)、concat\u ws(“,split(c7,”)[0],c8),c10;
Hive>从t2选择*;