ищет ваш образец
Кажется, вам нужна сумма сеанса, деленная на общее количество дней
select user_id, sum(sessions)/t.num_days
from activity
cross join (
select count(distinct login_time) num_days
from activity
) t
group by user_id
и если вам нужен только user_id в платежах
select user_id, sum(sessions)/t.num_days
from activity
cross join (
select count(distinct login_time) num_days
from activity
) t
inner join payments p on p.user_id = activity.user_id
group by user_id
и, глядя на ваш результат, кажется, вам нужно
select t1. login_time, ifnull(t2.avg_sess) average_sessions
from (
select distinct login_time
from activity
) t1
left join (
select a.login_time, avg(a.session) avg_sess
from activity a
inner join payments p on a.user_id = p.user_id
group by a.login_time
) t2 on t1.login_time = t2.login_time