【发布时间】:2017-10-13 17:41:02
【问题描述】:
我有一个基于 Parquet 文件的 Impala 表,用于存储视频观看记录。结构是:
VideoSession
...
...
accountdata struct <
...
...
emailid string
...
...
>
...
playbacksegments <
array <
struct <
...
...
playbackseconds double
...
...
>
>
>
我想获得每位客户的总播放秒数。我试过了:
select a.accountdata.emailid, sum(b.item.playbackseconds) secs
from VideoSession a left outer join VideoSession.playbacksegments b
group by a.accountdata.emailid;
Impala 还给我:
AnalysisException: LEFT OUTER JOIN 需要 ON 或 USING 子句。
由于这里没有外键/主键关系(应该是建在struct/parent表关系中吧?)我该如何完成这个查询?
【问题讨论】: