配置单元查询中反引号`符号的用法

以下Hive查询(Hive版本1.2.1000.2.6.5.1100-53)中出现错误。

SELECT * from`dbname.table_name`,其中columnname ='(ALL)';

此处table_name是充当表的对象,而dbname是充当数据库的类别。

日志文件中的错误: 表或数据库名称不得包含点号(。)字符

'system.org.apache.hive.service.cli.HiveSQLException:编译语句时出错:FAILED:SemanticException行1:14表或数据库名称可能不包含点号(。)字符'system.table_name'

将查询重新表述为

时同样有效

SELECT * from`dbname`.`table_name`其中columnname ='(ALL)'; //只是不包括反引号内的'。'字符。 要么 使用系统 SELECT * from`table_name`其中列名='(ALL)';

在测试时,将配置单元版本降级至1.2.1000.2.6.4.0-91时不会出现错误。 但是,我们需要根据业务需求升级配置单元版本。实时查询来自不同的UI系统,更改UI系统不受控制。

想要知道这一点(“。”符号不能被反引号包围)是最新的配置单元系统中的一种已知行为。有什么方法可以像在较早版本的hive中一样配置为工作。

a479751780 回答:配置单元查询中反引号`符号的用法

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3102425.html

大家都在问