Afonso_DiazGrouping users
    Updated 2025-01-08
    with

    main as (
    select
    tx_id,
    block_timestamp,
    f.value['value'] as user
    from
    aleo.core.fact_transitions
    join
    lateral flatten(input => inputs) f
    where
    f.value['value'] ilike 'aleo%'
    ),

    users as (
    select
    user,
    count(distinct tx_id) as transactions
    from
    main
    where block_timestamp < '2025-01-01'

    group by 1
    )

    select
    case
    when transactions = 1 then 'a. 1 Transaction'
    when transactions <= 5 then 'b. 2 - 5 Transactions'
    when transactions <= 10 then 'c. 6 - 10 Transactions'
    when transactions <= 25 then 'd. 11 - 25 Transactions'
    when transactions <= 50 then 'e. 26 - 50 Transactions'
    else 'f. > 50 Transactions'
    end as user_type,
    count(distinct user) as users
    QueryRunArchived: QueryRun has been archived