par_rnNEW 5
    Updated 2025-01-17
    WITH price AS (
    SELECT
    hour::DATE AS DATEE,
    TOKEN_ADDRESS,
    AVG(PRICE) AS USDPRICE
    FROM
    aptos.price.ez_prices_hourly
    GROUP BY
    1, 2
    ),

    base AS (
    SELECT
    DISTINCT ACCOUNT_ADDRESS AS USERS,
    SUM(AMOUNT / POW(10, DECIMALS) * USDPRICE) AS USD
    FROM
    aptos.core.fact_transfers A
    JOIN
    aptos.core.fact_events USING(TX_HASH)
    JOIN
    price P
    ON BLOCK_TIMESTAMP::DATE = DATEE
    AND A.TOKEN_ADDRESS = P.TOKEN_ADDRESS
    LEFT JOIN
    aptos.core.dim_tokens T
    ON A.TOKEN_ADDRESS = T.TOKEN_ADDRESS
    WHERE
    PAYLOAD_FUNCTION = '0xc6bc659f1649553c1a3fa05d9727433dc03843baac29473c817d06d39e7621ba::scripts::repay'
    AND TRANSFER_EVENT = 'WithdrawEvent'
    AND BLOCK_TIMESTAMP::DATE >= CURRENT_DATE - 30
    GROUP BY
    1
    )
    SELECT
    CASE
    WHEN USD < 50 THEN 'Less Than 50$'
    Last run: 3 months ago
    SPLITTER
    USERS
    1
    Between 50$ - 500$5485
    2
    Between 500$ - 5000$568
    3
    Between 5000$ - 20000$285
    4
    Less Than 50$106
    5
    More Than 20000$315
    5
    136B
    37s