select
signer_id as stakers,
round(sum(case when action = 'staking' then amount end ) -
sum(case when action = 'unstaking' then amount end),2)as staking_amount
from near.gov.fact_staking_actions
group by 1
having staking_amount > 0
order by staking_amount desc
limit 100