hbd1994Top Swappers by Number of Swaps
    Updated 2023-05-01
    with main as (
    select
    date(a.BLOCK_TIMESTAMP) as DATE,
    case
    when a.AMOUNT0_ADJUSTED < '0' then 'Swap For USDC'
    when a.AMOUNT0_ADJUSTED >= '0' then 'Swap From USDC' end as SWAP_TYPE,
    a.TX_HASH,
    b.FROM_ADDRESS,
    a.AMOUNT0_ADJUSTED,
    case
    when a.AMOUNT0_ADJUSTED < '0' then (a.AMOUNT0_ADJUSTED * -1)
    when a.AMOUNT0_ADJUSTED >= '0' then (a.AMOUNT0_ADJUSTED) end as AMOUNT
    from
    ethereum.uniswapv3.ez_swaps a
    left join
    ethereum.core.fact_transactions b
    on
    b.TX_HASH = a.TX_HASH
    where
    a.POOL_NAME in ( 'USDC-WETH 100 1' )
    and a.BLOCK_TIMESTAMP::date >= CURRENT_DATE - {{Date_Interval}} )

    select
    case
    when FROM_ADDRESS = OWNER then ENS_NAME
    else FROM_ADDRESS end as SWAPPER,
    SWAP_TYPE,
    COUNT(*) AS SWAPS_COUNT,
    ROW_NUMBER() OVER (PARTITION BY SWAP_TYPE ORDER BY SWAPS_COUNT DESC) AS TOP_TEN

    from main a
    left join crosschain.core.ez_ens b on FROM_ADDRESS=OWNER
    GROUP BY 1 , 2
    QUALIFY TOP_TEN <= '10'
    ORDER BY 1 , 2

    Run a query to Download Data