我使用apache钻查询。我可以检索单独查询的数据,例如;
select * from sample.file1
select * from sample.file2
我需要的是获取文件夹中多个文件的结果。有没有办法递归获取数据或在apache钻取中使用交叉连接?
答案 0 :(得分:0)
查询您的目录:
select * from <dir>
说sample.file1
和sample.file2
在/home/dev/data
目前你正在做类似的事情:
use dfs.`/user/dev/data`
select * from sample.file1
select * from sample.file2
改为使用:
use dfs.`/user/dev`
select * from data
答案 1 :(得分:0)
我找到了一个解决方案,它还可以从不同层次结构级别的不同文件夹中检索数据。
假设层次结构是;
| - mainFolder
| - | - folder1
| - | - | - sample1.json
| - | - | - sample2.json
| - | - | - folder2
| - | - | - | - sample4.json
| - | - folder3
| - | - | - sample5.json
| - | - | - sample6.json
从所有文件中获取所有数据;
SELECT * FROM mainFolder.* WHERE dir0=‘folder1' or dir0=‘folder3' or dir1=‘folder2';
&#34; dir&#34;之后的数字表示层次结构的级别。无需提供文件夹的路径。它分别检查给定级别的所有文件夹。仅从folder2 dir1='folder2'
获取数据就足够了。