marquOP Bears - users count bignums
    Updated 2022-11-08
    with

    nft_events as (
    select distinct logs.tx_hash
    from optimism.core.fact_event_logs logs
    left join optimism.core.ez_nft_sales sales
    on logs.tx_hash = sales.tx_hash
    and logs.contract_address = sales.nft_address
    and logs.event_inputs:tokenId::string = sales.tokenid::string
    where 1=1
    and logs.topics[0] = '0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef' -- Transfer
    and logs.event_inputs:tokenId is not null
    and logs.tx_status = 'SUCCESS'
    and logs.origin_function_signature not in ('0x883ec2f7') -- addShort
    and (logs.origin_from_address = logs.event_inputs:from
    or logs.origin_from_address = logs.event_inputs:to)
    and datediff('month',logs.block_timestamp,current_date()) <= {{month}}
    )

    select

    case when nft_events.tx_hash is null then 'Other' else 'NFT Action' end as label,
    count(distinct from_address) as users
    from optimism.core.fact_transactions txs
    left join nft_events
    using(tx_hash)
    where status = 'SUCCESS'
    and datediff('month',block_timestamp,current_date()) <= {{month}}
    group by 1
    order by label desc
    Run a query to Download Data