SELECT SWAP_PROGRAM, COUNT(*) AS USERS FROM (
SELECT DISTINCT SWAP_PROGRAM, SWAPPER FROM (
SELECT BLOCK_TIMESTAMP, TX_GROUP_ID, SWAPPER, SWAP_PROGRAM, split_part(L.ADDRESS_NAME,': ',2) AS DEX_NAME, SWAP_FROM_ASSET_ID, SWAP_FROM_AMOUNT
FROM flipside_prod_db.algorand.swaps AS S
JOIN flipside_prod_db.algorand.labels AS L ON S.POOL_ADDRESS = L.ADDRESS
WHERE
L.LABEL_TYPE = 'dex'
AND BLOCK_TIMESTAMP BETWEEN '2022-05-01' AND '2022-06-30'
)
)
GROUP BY SWAP_PROGRAM
ORDER BY 2 DESC