phi-deltalyticsSolPoolLPActions
    Updated 2023-06-08
    WITH whirlpool_events AS (
    SELECT
    block_timestamp,
    tx_id,
    index,
    inner_instruction,
    -- CHARINDEX('mintAuthority', inner_instruction) AS MatchPosition,
    (CASE WHEN inner_instruction like '%initializeMint%' THEN 'incrLiquidity'
    WHEN inner_instruction like '%burnChecked%' THEN 'decrLiquidity' ELSE NULL END) AS lp_action,
    (CASE WHEN lp_action = 'incrLiquidity' THEN substring(inner_instruction, CHARINDEX('mintAuthority', inner_instruction) + 16, 44)
    --WHEN lp_action = 'decrLiquidity' THEN NULL
    ELSE NULL END) AS incr_authority,
    (CASE WHEN lp_action = 'incrLiquidity' THEN substring(inner_instruction, CHARINDEX('source', inner_instruction) + 9, 44)
    WHEN lp_action = 'decrLiquidity' THEN substring(inner_instruction, CHARINDEX('owner', inner_instruction) + 8, 44) END) AS lp_address,
    (CASE WHEN lp_action = 'incrLiquidity' THEN substring(inner_instruction, CHARINDEX('mint', inner_instruction) + 7, 44)
    WHEN lp_action = 'decrLiquidity' THEN substring(inner_instruction, CHARINDEX('mint', inner_instruction) + 7, 44)
    ELSE NULL END) AS lp_token
    FROM
    solana.core.fact_events
    WHERE
    program_id = 'whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc' -- ORCA WHIRLPOOL PROGRAM
    --AND tx_id = '3cUmaUs6qnk7u738ywg6sSAWMPSnkz2xm2pGW5gKPoPfbNbMGV8r9e8tNpJ7HzMnLeNM7e36jbR4rxfy1J2ycgpM'
    AND succeeded = 'TRUE'
    ),

    mint_pool AS (
    SELECT
    incr_authority as authority,
    lp_token
    FROM whirlpool_events
    WHERE lp_action = 'incrLiquidity'
    ),


    whirlpool_events_final AS ( --add pool address for burn events
    SELECT
    Run a query to Download Data