Tobi_12024-06-15 09:25 AM
    Updated 2024-06-15
    WITH last_30_days AS (
    SELECT
    BLOCK_TIMESTAMP::DATE AS transaction_date,
    SENDER
    FROM aptos.core.fact_transactions
    WHERE BLOCK_TIMESTAMP >= DATEADD(DAY, -30, CURRENT_TIMESTAMP)
    ),
    active_users AS (
    SELECT
    transaction_date,
    COUNT(DISTINCT SENDER) AS active_user_count
    FROM last_30_days
    GROUP BY transaction_date
    ),
    total_users AS (
    SELECT
    transaction_date,
    (
    SELECT COUNT(DISTINCT SENDER)
    FROM aptos.core.fact_transactions
    WHERE BLOCK_TIMESTAMP <= DATEADD(DAY, -30, transaction_date)
    ) AS total_user_count
    FROM (
    SELECT DISTINCT transaction_date
    FROM last_30_days
    )
    )
    SELECT
    a.transaction_date,
    a.active_user_count,
    t.total_user_count
    FROM
    active_users a
    JOIN
    total_users t
    ON
    QueryRunArchived: QueryRun has been archived