Zha*_* Yi 4 sql presto amazon-athena
我无法从 Athena 控制台运行带有 where 条件的简单 sql 选择。以下是详细信息:
SELECT name, count(*) AS c
FROM target_reddit_movie
GROUP BY name
HAVING c > 1
ORDER BY c DESC
LIMIT 10
Run Code Online (Sandbox Code Playgroud)
我收到一个错误SYNTAX_ERROR: line 1:74: Column 'c' cannot be resolved。
Athena 似乎无法识别该as列名称。我怎样才能让它发挥作用?它使用不同的语法吗?
逻辑上的流程是这样的(执行引擎可以自由选择不同的执行策略):
WHEREWHERE已应用(如果有的话;当然,您的情况没有)GROUP BY计算聚合HAVING应用于聚合值 - 在这里您可以参考聚合(例如count(*))和GROUP BY列(例如name在您的情况下)SELECT分配已应用(从现在起c已知意味着count(*))ORDER BY被应用,因此它可以使用cLIMIT被申请;被应用另请参阅Group by 和having 的工作原理以及Presto 文档SELECT