【发布时间】:2020-12-30 09:11:31
【问题描述】:
我有一组可能被点击或未被点击的展示(横幅)。我想计算 ips 的出现,但只计算那些被点击的印象。
WITH imps AS (
SELECT
day,
source_id,
ip,
trans_id
FROM
xxx
),
clicks AS (
SELECT
day,
trans_id,
1 AS clicked,
FROM
yyy
)
SELECT
imps.source_id as source_id,
histogram(
filter(zip(array_agg(ip), array_agg(clicked)), x -> x.clicked = 1)
) as ip_hist
FROM
imps
LEFT JOIN
clicks
ON imps.trans_id = clicks.trans_id
GROUP BY
imps.source_id;
这是我尝试过的查询,但它不起作用,因为 clicked 不是一列。我不清楚这是否可以在 Presto 上完成。此外,这是一种更复杂的查询方式的一部分,这就是为什么我想在聚合中进行过滤。
【问题讨论】: