繁体   English   中英

如何避免在 ClickHouse 的另一个聚合函数中使用聚合函数

[英]How to avoid using aggregation function in another aggregation function in ClickHouse

我想获得创建用户配置文件ads_clients_data.create_date与其帖子的第一天之间的平均天数min(ads_data.time)

我写了以下SQL语句:

select 
    avg(dateDiff(dd, ads_clients_data.create_date, ads_data.time),
    min(ads_data.time))
from 
    ads_data
inner join 
    ads_clients_data on ads_clients_data.client_union_id = ads_data.client_union_id;

但是不可能在 avg 函数中使用 min 。 这是我第一次与 ClickHouse 合作,如果有人能帮助我,我将非常感激。

如果我正确地跟随您,您可以使用两个级别的聚合:

select avg(datediff(dd, c.create_date, d.min_time)
from (
    select client_union_id, min(ads_data.time) min_time
    from ads_data
    group by client_union_id
) d
inner join ads_clients_data c on c.client_union_id = d.client_union_id;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM