Hossein2024-07-13 11:16 PM
    Updated 2024-07-13

    with ethereum as (
    select
    block_timestamp::Date AS date,tx_hash,
    amount_in_usd AS amountUSD,
    origin_from_address as user
    from ethereum.defi.ez_dex_swaps
    where amount_in_usd<power(10,6)
    and tx_hash in (select distinct(tx_hash) from ethereum.core.ez_decoded_event_logs where origin_to_address in ('0xef1c6e67703c7bd7107eed8303fbe6ec2554bf6b', '0x3fc91a3afd70395cd496c647d5a6cc9d4b2b7fad'))
    and date>='2023-01-01'
    and platform = 'uniswap-v3'
    )

    select
    case when date>='2023-10-17' then 'after fee changes' else 'before fee changes' end as type,
    count(distinct(user)) as "Users",
    count(distinct tx_hash) as "Swaps",
    avg(amountUSD) as "Amount Avg",
    sum(amountUSD) as "Volume",
    date_trunc('{{ time }}', date) as dt,
    sum("Swaps") over (partition by type order by date_trunc('{{ time }}', date)) as "Swaps(cum)",
    sum("Volume") over (partition by type order by date_trunc('{{ time }}', date)) as "Volume(cum)",
    (("Swaps" - lag("Swaps", 1) over (partition by type order by date_trunc('{{ time }}', date)))/lag("Swaps", 1) over (partition by type order by date_trunc('{{ time }}', date))) * 100 as "swap changes(%)",
    (("Volume" - lag("Volume", 1) over (partition by type order by date_trunc('{{ time }}', date)))/lag("Volume", 1) over (partition by type order by date_trunc('{{ time }}', date))) * 100 as "volume changes(%)",
    (("Users" - lag("Users", 1) over (partition by type order by date_trunc('{{ time }}', date)))/lag("Users", 1) over (partition by type order by date_trunc('{{ time }}', date))) * 100 as "user changes(%)"
    from ethereum
    group by type,dt
    QueryRunArchived: QueryRun has been archived