ludicrousLendi copy
    Updated 2024-12-08
    WITH MarkedTransactions AS (
    SELECT
    OWNER,
    MINT,
    BLOCK_TIMESTAMP,
    PRE_BALANCE,
    BALANCE,
    CASE
    WHEN BALANCE > PRE_BALANCE THEN 'ADD_MINUTES'
    WHEN BALANCE < PRE_BALANCE THEN 'SUBTRACT_MINUTES'
    ELSE 'NO_CHANGE'
    END AS TRANSACTION_TYPE,
    ABS(BALANCE - PRE_BALANCE) AS TOKEN_CHANGE
    FROM
    solana.core.fact_token_balances
    WHERE
    MINT IN ('9mkbt5gx6XsdCBVPLbioQ1NvgNjmNBktccGWctrExwJC', '28nC2fTmasMuLnbx9uuAJbavyxmA9EVnGfiYHVXdjtzC')
    AND BLOCK_TIMESTAMP >= '2024-11-01' -- Program start date
    AND BLOCK_TIMESTAMP <= '{{END_DATE2}}' -- Upper limit for data collection
    AND SUCCEEDED = TRUE
    ),
    TransactionMinutes AS (
    SELECT
    OWNER,
    MINT,
    CASE
    WHEN TRANSACTION_TYPE = 'ADD_MINUTES' THEN
    DATEDIFF(MINUTE, BLOCK_TIMESTAMP, '{{END_DATE1}}') * TOKEN_CHANGE
    WHEN TRANSACTION_TYPE = 'SUBTRACT_MINUTES' THEN
    -DATEDIFF(MINUTE, BLOCK_TIMESTAMP, '{{END_DATE1}}') * TOKEN_CHANGE
    ELSE
    0
    END AS HOLDING_MINUTES_END1,
    CASE
    WHEN TRANSACTION_TYPE = 'ADD_MINUTES' THEN
    DATEDIFF(MINUTE, BLOCK_TIMESTAMP, '{{END_DATE2}}') * TOKEN_CHANGE
    QueryRunArchived: QueryRun has been archived