Advertisement
kirzecy670

Untitled

Sep 27th, 2024
41
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 0.86 KB | None | 0 0
  1. WITH ax AS
  2.   (SELECT 'NA' AS ip_country,
  3.           CASE
  4.               WHEN toInt64OrNull(age) IS NULL THEN 'a. N/A'
  5.               WHEN toInt64OrNull(age) = 0 THEN 'b. 0'
  6.               WHEN toInt64OrNull(age) < 7 THEN 'c. 1-6'
  7.               WHEN toInt64OrNull(age) < 11 THEN 'd. 7-10'
  8.               WHEN toInt64OrNull(age) < 15 THEN 'e. 11-14'
  9.               WHEN toInt64OrNull(age) < 18 THEN 'f. 15-17'
  10.               WHEN toInt64OrNull(age) < 22 THEN 'g. 18-21'
  11.               ELSE 'h. 22+'
  12.           END AS age_group,
  13.           COUNT(uid) AS n,
  14.           sum(n) OVER (PARTITION BY ip_country) AS cohort
  15.    FROM analytics.child_properties
  16.    WHERE notEmpty(parents)
  17.      AND ip_country != ''
  18.      AND last_state_datetime >= '2023-01-01'
  19.    GROUP BY 1, 2)
  20. SELECT
  21. --ip_country,
  22.        age_group,
  23.        n,
  24.        round(n/cohort, 3) AS SHARE
  25. FROM ax
  26. ORDER BY 1, 2
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement