首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >运行时,在FROM子句中获取错误“不匹配的输入”作为‘期望从附近’“

运行时,在FROM子句中获取错误“不匹配的输入”作为‘期望从附近’“
EN

Stack Overflow用户
提问于 2013-08-13 08:31:36
回答 1查看 74.8K关注 0票数 11

我用java代码tableHiveCelltableHiveWiFi创建了两个表。

当我尝试运行以下sql命令时:

代码语言:javascript
复制
select count(UEs.cnc) as 'Active UEs' 
                      ^
from 
(select distinct cnc from tableHiveCell wifi  
  union 
 select distinct cnc from tableHiveCell cell)
 as UEs;

我收到一个错误:

代码语言:javascript
复制
java.sql.SQLException:
Query returned non-zero code: 11,
cause: FAILED: Parse Error: line 1:22 mismatched input 'as' expecting FROM near ')' in from clause
at org.apache.hadoop.hive.jdbc.HiveStatement.executeQuery(HiveStatement.java:189).

我错过了什么吗?

编辑1

我试过:

代码语言:javascript
复制
select count(UEs.cnc) as 'Active UEs' 
                      ^
from 
(select distinct cnc from tableHiveCell wifi)  
  union 
 (select distinct cnc from tableHiveCell cell)
 as UEs;

相同误差

编辑2

我试过:

代码语言:javascript
复制
select count(UEs.cnc) as Active_UEs
 from (select distinct cnc from tableHiveCell wifi
  union ALL 
 select distinct cnc from tableHiveCell cell) as UEs;
                                              ^ 

获得相同的错误,但最后一个as

代码语言:javascript
复制
 line 1:142 mismatched input 'as' expecting Identifier near ')' in subquery source
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-13 10:38:40

按照应答表单中的请求: Hadoop似乎在子查询上通过AS关键字使用别名时遇到了问题,您可以轻松地分配别名而不使用AS关键字。

在这里可以找到示例:https://www.inkling.com/read/hadoop-definitive-guide-tom-white-3rd/chapter-12/querying-data

并为未来的访问者引用(子查询参见mt别名):

代码语言:javascript
复制
SELECT station, year, AVG(max_temperature)
FROM (
  SELECT station, year, MAX(temperature) AS max_temperature
  FROM records2
  WHERE temperature != 9999
    AND (quality = 0 OR quality = 1 OR quality = 4 OR quality = 5 OR quality = 9)
  GROUP BY station, year
) mt
GROUP BY station, year;
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18204232

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档