Baselight
WITH stage_norm AS (
  SELECT
    m.match_id,
    CASE
      WHEN lower(COALESCE(m.status,'')) LIKE '%semi%'    THEN 'Semi-final'
      WHEN lower(COALESCE(m.status,'')) LIKE '%final%'
           AND lower(COALESCE(m.status,'')) NOT LIKE '%series%'
           AND lower(COALESCE(m.status,'')) NOT LIKE '%play off%'
           AND lower(COALESCE(m.status,'')) NOT LIKE '%qualification%'
           AND lower(COALESCE(m.status,'')) NOT LIKE '%quarter%'     THEN 'Final'
      WHEN lower(COALESCE(m.status,'')) LIKE '%quarter%' THEN 'Quarter-final'
      ELSE NULL
    END AS stage_clean
  FROM @blt.ultimate_soccer_dataset.matches m
  JOIN @blt.ultimate_soccer_dataset.seasons s ON s.season_id = m.season_id
  WHERE s.competition_id IN (
    '39f3b48e-3910-59ea-bc1e-508a45920661',
    '9b83c46c-ff11-5253-8dff-a94770fc76d4'
  )
)
SELECT stage_clean, COUNT(*) AS matches
FROM stage_norm
WHERE stage_clean IS NOT NULL
GROUP BY stage_clean
ORDER BY stage_clean

Share link

Anyone who has the link will be able to view this.