MAU-monitor (II)
Nu je de basis voor Carols MAU-monitor hebt gebouwd, schrijf je een query die een tabel oplevert met maanden en de delta tussen de huidige en de vorige MAU per maand.
Als de delta negatief is, waren er in de huidige maand minder actieve gebruikers dan in de vorige maand. Dat triggert de monitor om een rood vlaggetje te tonen, zodat het Productteam dit kan onderzoeken.
Deze oefening maakt deel uit van de cursus
Zakelijke data analyseren in SQL
Oefeninstructies
- Haal de MAU van de vorige maand op in de CTE
mau_with_lag. - Selecteer de maand en de delta tussen de MAU daarvan en die van de vorige maand.
- Sorteer oplopend op maand.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
WITH mau AS (
SELECT
DATE_TRUNC('month', order_date) :: DATE AS delivr_month,
COUNT(DISTINCT user_id) AS mau
FROM orders
GROUP BY delivr_month),
mau_with_lag AS (
SELECT
delivr_month,
mau,
-- Fetch the previous month's MAU
COALESCE(
___,
0) AS last_mau
FROM mau)
SELECT
-- Calculate each month's delta of MAUs
___,
___ AS mau_delta
FROM mau_with_lag
-- Order by month in ascending order
ORDER BY ___;