我安装了 apache hive-0.9.0 并开始执行一些基本命令,我在select *命令中发现了一个异常行为。在*之后的select语句中,在hive中允许任何随机字符,但在 RDBMS 中则不允许。我不确定它在蜂巢中的预期行为或错误。有人可以确认一下吗?
在下面的查询" abcdef"是随机字符。
在RDBMS(oracle)中:
select *abcdef from mytable;
输出
错误prepare()失败:ORA-00923:未找到FROM关键字
在Hive中:
select *abcdef from mytable;
输出:
查询工作正常,并显示mytable的所有记录。
答案 0 :(得分:0)
在RDBMS中,select后跟列名/ *,但在HIVE中,它可能是列名/ * /任何正则表达式(分区)。
浏览此链接 http://www.qubole.com/5-tips-for-efficient-hive-queries/ 它提供了完整的描述
答案 1 :(得分:0)
我从apache hive committe得到了回应。它确实是蜂巢中的一个错误。他们为这个问题提交了一张改进票 Jira Ticket:https://issues.apache.org/jira/browse/HIVE-8155