我有一个postgres查询:
SELECT 1 FROM vc_money_log_aggregated vmla2
LEFT JOIN vc_user_visits vuv2 ON vuv2.id = vmla2.visit_id
WHERE vmla2.uid = vu.id
AND coalesce(vuv2.app_type, (SELECT vuv2.app_type
FROM vc_user_visits vuv2
WHERE vuv2.uid = vmla2.uid
AND vuv2.dt < vmla2.from_dt
ORDER BY vuv2.dt DESC
LIMIT 1)
) NOT IN ('android', 'ios', 'wp')
AND vmla2.from_dt BETWEEN (SELECT start_dt FROM settings) AND (SELECT end_dt FROM settings)
我需要把它转换成clickhose查询。但是如何重写相关查询(coalesce部分)?我试图编写此clickhouse查询,但出现内存不足异常:
select
uid,
app_type,
dt
from
(select
uid,
max(dt) dt
from
(select
uid,
from_dt
from
postgres_replica.vc_money_log_aggregated) t1
join
(
select
app_type,
dt,
uid
from
postgres_replica.vc_user_visits
) t2
USING uid
where t1.from_dt > t2.dt
group by
uid) t3
join
(
select
app_type,
dt,
uid
from
postgres_replica.vc_user_visits
) t4
USING uid, dt
我应该如何重写这个查询?
暂无答案!
目前还没有任何答案,快来回答吧!