WITH tab1 as (
SELECT
DISTINCT CASE WHEN ACTION LIKE 'lp_tokens_burned' THEN LIQUIDITY_PROVIDER_ADDRESS END as withdraw
FROM osmosis.core.fact_liquidity_provider_actions
WHERE (ACTION LIKE 'lp_tokens_minted'
OR action LIKE 'lp_tokens_burned')
AND pool_id[0] = 872
), tab2 as (
SELECT
DISTINCT CASE WHEN ACTION LIKE 'lp_tokens_minted' THEN LIQUIDITY_PROVIDER_ADDRESS END as depositer
FROM osmosis.core.fact_liquidity_provider_actions
WHERE (ACTION LIKE 'lp_tokens_minted'
OR action LIKE 'lp_tokens_burned')
AND pool_id[0] = 877
)
SELECT --*
CASE WHEN depositer is NULL THEN 'non - 3-pool - depositer' ELSE '3-pool - depositer' END as user_type,
COUNT(*) as users
FROM tab1
LEFT outer JOIN tab2
ON withdraw = depositer
GROUP BY 1