Q&A about the site for mechanics and DIY enthusiast owners of cars, trucks, and motorcycles
select groups, [user_count_in_group] = count(Id) over(partition by groups), total_user_count from ( select *, case when "post_count" = 0 then '0' when "post_count" > 0 and "post_count" <= 10 then '1-10' when "post_count" > 10 then '10+' end as groups, (select count(Id) from Users) as "total_user_count" from ( select u.Id, count(p.Id) as "post_count" from Users u full outer join Posts p on (p.OwnerUserID = u.Id) where p.Id is not null group by u.Id)t )t2 group by groups,total_user_count,total_user_count,Id ;