Updated 2023-02-03
    WITH sales AS(
    SELECT *
    FROM ethereum.core.ez_nft_sales
    WHERE price is not null AND PRICE_USD is not null AND EVENT_TYPE='sale'
    AND NFT_ADDRESS='0x455c732fee7b5c3b09531439b598ead4817d5274' --contract

    AND price is not null AND PRICE_USD is not null AND EVENT_TYPE='sale'
    AND BUYER_ADDRESS != '0x0000000000000000000000000000000000000000'
    qualify ROW_NUMBER() over (partition by TOKENID ORDER BY BLOCK_TIMESTAMP DESC)=1 )
    ,transfers AS(
    SELECT BLOCK_TIMESTAMP, NFT_TO_ADDRESS AS wallet,TOKENID
    FROM ethereum.core.ez_nft_transfers
    WHERE EVENT_TYPE='sale'
    AND NFT_ADDRESS='0x455c732fee7b5c3b09531439b598ead4817d5274' --contract

    AND NFT_TO_ADDRESS != '0x0000000000000000000000000000000000000000'
    qualify ROW_NUMBER() over (partition by TOKENID ORDER BY BLOCK_TIMESTAMP DESC)=1
    )
    , salesAndTrnsfer AS(
    SELECT *, ROW_NUMBER() over (partition by TOKENID ORDER BY BLOCK_TIMESTAMP DESC) as lastTime
    FROM(
    SELECT *
    FROM transfers
    union all
    SELECT BLOCK_TIMESTAMP ,BUYER_ADDRESS as wallet, TOKENID
    FROM sales)
    )

    ,final AS(
    SELECT wallet, COUNT(DISTINCT TOKENID) as number
    FROM salesAndTrnsfer
    WHERE lastTime=1
    GROUP BY 1
    Run a query to Download Data