我试图运行在Postgresql上运行的sql,但是当我尝试使用Redshift db时却出现错误
错误:此类型的相关子查询模式尚不支持
我要尝试做的是,针对所有角色,在该角色开始日期之前的30天内找到具有该角色的天数,该距离在该站点的20公里之内。
我只是看不到如何做不同的事情...任何想法都太棒了!
select
roles.id,
roles.start_date,
roles.site_id
,(SELECT
count(*)
FROM
(SELECT
rl.start_date,
sum(rl.amount)
FROM roles rl
WHERE rl.site_id IN
(SELECT
site_id_end
from all_view.site_distances
where distance_km <= 20
and site_id_start = roles.site_id)
AND rl.start_date between (roles.start_date - interval '29 days') and roles.start_date
GROUP BY 1) as days_with_roles
)
from
roles as roles
where
roles.site_id = 123