Updated 2023-04-01
    with dapps as (select project_name,count(distinct from_address) users from avalanche.core.fact_token_transfers as t
    inner join avalanche.core.dim_labels as l
    on t.to_address= l.address
    where label_type='dapp'
    group by 1
    having users> 100)

    , total_statistic as (select project_name,count(distinct from_address) users , sum(raw_amount/pow(10,decimals)) amount , count(1) cnt
    from avalanche.core.fact_token_transfers as t
    inner join avalanche.core.dim_labels as l
    on t.to_address= l.address
    inner join avalanche.core.dim_contracts
    on contract_address=avalanche.core.dim_contracts.address
    where label_type='dapp' and project_name in (select project_name from dapps) and raw_amount/pow(10,decimals) < 1000000000
    group by 1)

    , weekly as (select project_name,date_trunc('week', block_timestamp) as dates , count(distinct from_address) users , sum(raw_amount/pow(10,decimals)) amount , count(1) cnt
    from avalanche.core.fact_token_transfers as t
    inner join avalanche.core.dim_labels as l
    on t.to_address= l.address
    inner join avalanche.core.dim_contracts
    on contract_address=avalanche.core.dim_contracts.address
    where label_type='dapp' and project_name in (select project_name from dapps) and raw_amount/pow(10,decimals) < 1000000000
    group by 1,2)
    , yearly as (select project_name,year(block_timestamp) as dates , count(distinct from_address) users , sum(raw_amount/pow(10,decimals)) amount , count(1) cnt
    from avalanche.core.fact_token_transfers as t
    inner join avalanche.core.dim_labels as l
    on t.to_address= l.address
    inner join avalanche.core.dim_contracts
    on contract_address=avalanche.core.dim_contracts.address
    where label_type='dapp' and project_name in (select project_name from dapps) and raw_amount/pow(10,decimals) < 1000000000
    group by 1,2)

    select project_name,users,amount,cnt from total_statistic
    Run a query to Download Data