Afonso_DiazUntitled Query
    Updated 2023-02-04
    with
    t1 as (
    select
    seller as user,
    mint,
    min(block_timestamp) as max_day,
    avg(sales_amount) as sell_amount
    from solana.core.fact_nft_sales
    group by 1, 2
    ),

    t2 as (
    select
    purchaser as user,
    mint,
    min(block_timestamp) as min_day,
    avg(sales_amount) as buy_amount
    from solana.core.fact_nft_sales
    group by 1, 2
    ),

    t3 as (
    select
    t2.user as purchaser,
    sum(buy_amount - nvl(sell_amount, 0)) as profit_sol,
    avg(datediff('hour', min_day, max_day)) as average_holding_time
    from t2
    left join t1
    using(mint, user)
    where min_day > current_date - 90
    group by 1
    having average_holding_time > 0
    order by 2 desc
    limit 200
    )

    Run a query to Download Data