select
block_timestamp::date "Date",
token0_symbol "Token",
count (distinct (tx_hash)) "Swaps Count",
count (distinct (recipient)) "Swappers Count",
sum(abs(amount0_usd)) "Volume (USD)",
avg(abs(amount0_usd)) "Average Volume (USD)",
median(abs(amount0_usd)) "Median Amount (USD)",
sum("Swaps Count") over (partition by "Token" order by "Date" asc) as "Comulative Swaps Count",
sum("Swappers Count") over (partition by "Token" order by "Date" asc) as "Comulative Swappers Count",
sum("Volume (USD)") over (partition by "Token" order by "Date" asc) as "Comulative Volume (USD)",
row_number() over (partition by "Date" order by "Volume (USD)" desc) as rank
from ethereum.uniswapv3.ez_swaps
where 1 = 1
and amount0_usd > 0
and token1_symbol is not null
and block_timestamp >= current_date - interval '2 weeks'
group by 1, 2
qualify rank <= 10
order by 1