JonasoStablecoins: Crypto backed
    Updated 2024-09-08
    with

    -- labeled db setup
    LL as(
    select to_varchar(value:BB) as cate, to_varchar(value:CC) as issuer, to_varchar(value:DD) as token, to_varchar(value:CT) as CONTRACT
    from (select live.udf_api('https://flipsidecrypto.xyz/api/v1/queries/868a10dd-8c47-4df6-a5d5-d246600e5411/data/latest') as db ) , LATERAL FLATTEN (input => db:data)
    where to_varchar(value:AA) = 'stable' ),

    AA as(
    select 'mint' as action, raw_amount as amount, contract_address, from_address as mint, to_address as entity, block_timestamp from ethereum.core.fact_token_transfers union all
    select 'burn' as action, 0 - raw_amount as amount, contract_address, to_address as mint, from_address as entity, block_timestamp from ethereum.core.fact_token_transfers union all
    select 'mint' as action, raw_amount as amount, contract_address, from_address as mint, to_address as entity, block_timestamp from arbitrum.core.fact_token_transfers union all
    select 'burn' as action, 0 - raw_amount as amount, contract_address, to_address as mint, from_address as entity, block_timestamp from arbitrum.core.fact_token_transfers union all
    select 'mint' as action, raw_amount as amount, contract_address, from_address as mint, to_address as entity, block_timestamp from optimism.core.fact_token_transfers union all
    select 'burn' as action, 0 - raw_amount as amount, contract_address, to_address as mint, from_address as entity, block_timestamp from optimism.core.fact_token_transfers union all
    select 'mint' as action, raw_amount as amount, contract_address, from_address as mint, to_address as entity, block_timestamp from base.core.fact_token_transfers union all
    select 'burn' as action, 0 - raw_amount as amount, contract_address, to_address as mint, from_address as entity, block_timestamp from base.core.fact_token_transfers union all
    select 'mint' as action, raw_amount as amount, contract_address, from_address as mint, to_address as entity, block_timestamp from blast.core.fact_token_transfers union all
    select 'burn' as action, 0 - raw_amount as amount, contract_address, to_address as mint, from_address as entity, block_timestamp from blast.core.fact_token_transfers union all
    select 'mint' as action, raw_amount as amount, contract_address, from_address as mint, to_address as entity, block_timestamp from avalanche.core.fact_token_transfers union all
    select 'burn' as action, 0 - raw_amount as amount, contract_address, to_address as mint, from_address as entity, block_timestamp from avalanche.core.fact_token_transfers union all
    select 'mint' as action, raw_amount as amount, contract_address, from_address as mint, to_address as entity, block_timestamp from bsc.core.fact_token_transfers union all
    select 'burn' as action, 0 - raw_amount as amount, contract_address, to_address as mint, from_address as entity, block_timestamp from bsc.core.fact_token_transfers union all
    select 'mint' as action, raw_amount as amount, contract_address, from_address as mint, to_address as entity, block_timestamp from polygon.core.fact_token_transfers union all
    select 'burn' as action, 0 - raw_amount as amount, contract_address, to_address as mint, from_address as entity, block_timestamp from polygon.core.fact_token_transfers
    ),

    -- logic
    BA as(
    select issuer, token, cate, block_timestamp,
    case when token in ('USDC','USDT','PYUSD','GUSD','BUIDL','BEAN','USDR','HUSD') then amount/1e6 else amount/1e18 end as amount
    from AA as a
    join LL as b on a.contract_address = b.contract
    where mint = '0x0000000000000000000000000000000000000000'
    and cate = 'crypto-backed'
    and token not in ('USDR') ),
    QueryRunArchived: QueryRun has been archived