chn*_*net 13 hive group-by hiveql
我在HIVE中创建了一个表格.它包含以下列:
id bigint, rank bigint, date string
Run Code Online (Sandbox Code Playgroud)
我想每个月获得平均(排名).我可以使用这个命令.有用.
select a.lens_id, avg(a.rank)
from tableA a
group by a.lens_id, year(a.date_saved), month(a.date_saved);
Run Code Online (Sandbox Code Playgroud)
但是,我也想获得日期信息.我用这个命令:
select a.lens_id, avg(a.rank), a.date_saved
from lensrank_archive a
group by a.lens_id, year(a.date_saved), month(a.date_saved);
Run Code Online (Sandbox Code Playgroud)
它抱怨说: Expression Not In Group By Key
Qui*_*nnG 17
完整的错误消息应采用格式Expression Not In Group By Key [value].
该[value]会告诉你什么表情,必须在Group By.
只看两个查询,我会说你需要a.date_saved明确添加到Group By.
van*_*p82 10
四处走动是将附加字段放在collect_set中并返回集合的第一个元素.例如
select a.lens_id, avg(a.rank), collect_set(a.date_saved)[0]
from lensrank_archive a
group by a.lens_id, year(a.date_saved), month(a.date_saved);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
63652 次 |
| 最近记录: |