WITH main_query AS (
SELECT
PLAYER,
row_number() over (partition by flow.core.dim_topshot_metadata.NFT_ID order by BLOCK_TIMESTAMP DESC) as last_buy,
(BUYER)
FROM
flow.core.dim_topshot_metadata
JOIN
flow.core.fact_nft_sales
ON
flow.core.fact_nft_sales.NFT_ID = flow.core.dim_topshot_metadata.NFT_ID)
SELECT
PLAYER,
COUNT (BUYER) AS count_buyers
FROM
main_query
WHERE last_buy = 1
GROUP BY PLAYER
ORDER BY count_buyers DESC