我对Hive还比较陌生,所以我甚至不确定该用什么合适的术语,所以这个问题可能已经解决了。如果有,我道歉。这是我的设想;我们有一个大的数据表,上面有成千上万的设备,按序列号输入。我需要查找设备的特定变量,通常一次几百个。我知道我可以搜索包含“sn=001或sn=002或sn=003..”的数百个条目,但这既麻烦又耗时。我想做的是有一个包含序列号列表的csv文件,并执行一个搜索,上面写着“给我这个csv文件中所有设备的变量”。有可能吗?如果有,我该怎么做?谢谢!
jum4pzuy1#
如果你在hdfs中有csv文件,你可以在上面做一个表格(我们称之为csv(表)。然后您可以按以下方式编写查询:
select * from my_table where specific_column in ( select * from csv_table) ;
wwodge7n2#
演示猛击
cat>/tmp/myfile.txt 111 123 222 333 789
Hive
create table mytable (mycol string); insert into mytable values (123),(456),(789);
select * from mytable where in_file (mycol,'/tmp/myfile.txt') ;
+-------+ | mycol | +-------+ | 123 | | 789 | +-------+
2条答案
按热度按时间jum4pzuy1#
如果你在hdfs中有csv文件,你可以在上面做一个表格(我们称之为csv(表)。
然后您可以按以下方式编写查询:
wwodge7n2#
在\u文件中
演示
猛击
Hive