F=
Задача такая: посчитать кол-во не всего рефералов, а кол-во рефералов у юзера на каждом уровне, до 3 уровня.
Сделал вот такой запрос
with recursive cte (id, id_referer, lvl) as (
select id,
id_referer,
1 lvl
from tb_users
where id_referer = 1
union DISTINCT
select p.id,
p.id_referer,
lvl + 1
from tb_users p
inner join cte
on p.id_referer = cte.id
where lvl < 3
)
select * from cte
Сейчас я получаю такой вывод id id_referer lvl
2 1 1
3 1 1
.......
Мне надо получить вот такой ответ
id amount_ref_lvl_1 amount_ref_lvl_2 amount_ref_lvl_3
1 333 400 5999
То есть просто вывести кол-во рефералов у пользователя на каждом уровне.