datavortexstaking
    Updated 2025-01-17
    WITH staking_events AS (
    SELECT
    DATE_TRUNC('week', block_timestamp) AS week,
    event_type,
    (post_tx_staked_balance - pre_tx_staked_balance) / 1000000000 AS "staked amount",
    withdraw_amount / 1000000000 AS "withdraw amount"
    FROM
    solana.gov.ez_staking_lp_actions
    WHERE
    succeeded = TRUE
    AND block_timestamp >= '2024-07-01'
    AND block_timestamp < '2024-10-01'
    AND (
    (event_type = 'delegate' AND (post_tx_staked_balance - pre_tx_staked_balance) > 0)
    OR event_type = 'withdraw'
    )
    ),
    weekly_totals AS (
    SELECT
    week,
    SUM(CASE WHEN event_type = 'delegate' THEN "staked amount" ELSE 0 END) AS "total staked amount",
    SUM(CASE WHEN event_type = 'withdraw' THEN "withdraw amount" ELSE 0 END) AS "total withdrawn amount(sol)"
    FROM
    staking_events
    GROUP BY
    week
    )

    SELECT
    week,
    "total staked amount",
    "total withdrawn amount(sol)",
    SUM("total staked amount") OVER (ORDER BY week) AS "cumulative staked amount",
    SUM("total withdrawn amount(sol)") OVER (ORDER BY week) AS "cumulative withdrawn amount"
    FROM
    weekly_totals
    QueryRunArchived: QueryRun has been archived