SELECT
date,
avg(no_of_days) as avg_no_of_days,
median(no_of_days) as median_no_of_days,
percentile_cont(0.2) within group (order by no_of_days) as "bottom_20_pct",
percentile_cont(0.4) within group (order by no_of_days) as "bottom_40_pct",
percentile_cont(0.6) within group (order by no_of_days) as "top_40_pct",
percentile_cont(0.8) within group (order by no_of_days) as "top_20_pct"
FROM
(
SELECT
date_trunc('month', updatedat) as date,
author,
count(distinct date_trunc('day', updatedat)) as no_of_days
from near.beta.github_activity
group by 1,2
)
group by 1
order by 1