【发布时间】:2021-12-05 05:53:44
【问题描述】:
我正在尝试在 Presto SQL 中按月分组。 我试过这个:
select
date_trunc('month', CAST(date AS date)) date_month,
sum(gross_revenue,0) AS 'monthly_net_revenue'
from gross_revenue_calculator
group by date_trunc('month', date)
这给了我以下错误:
Malformed query: line 61:27: mismatched input ''monthly_net_revenue''. Expecting: <identifier>
预期输出:
October: $102.12
November: $90.12
【问题讨论】:
-
删除引号字符:
AS monthly_net_revenue。并使用GROUP BY date_month。 -
没用:现在说:
FAILED: Presto error: COLUMN_NOT_FOUND: line 19:10: Column 'date_month' cannot be resolved -
这是 presto 错误/问题 - SQL 语法允许引用 GROUP BY 中的输出列...如果这在 presto 中是不可能的,那么在 GROUP BY 中使用一个与输出表达式字面匹配的表达式(删除 CAST - 这显然是多余的)。无论如何,我之前评论的第一部分是您在问题中发布的错误的根源 - 修复它。
标签: sql postgresql presto