SocioAnalyticaactive nodes
    Updated 2024-12-12
    with staking as (
    select
    sum(balance) as total_near_staked
    from (
    SELECT
    address,
    block_timestamp,
    balance
    from near.gov.fact_staking_pool_balances
    qualify row_number () over (partition by address order by block_timestamp desc) = 1
    )
    )
    ,
    validator as (
    select
    address as validator,
    sum(case when action = 'staking' then amount end )-
    sum(case when action = 'unstaking' then amount end) as staked_near
    from near.gov.fact_staking_actions
    group by 1
    having staked_near > 0
    )
    ,
    validator_balance as (
    SELECT
    address as validator,
    block_timestamp,
    balance
    from near.gov.fact_staking_pool_balances
    where address IN (select validator from validator)
    qualify row_number () over (partition by address order by block_timestamp desc) = 1
    )

    SELECT
    count(DISTINCT validator) as "Nodes Validating"
    from (
    QueryRunArchived: QueryRun has been archived