Tingkat retensi
Bob kembali meminta bantuan Anda setelah Anda menyelesaikan pemantau MAU milik Carol. Pertemuan dia dengan calon investor semakin dekat, dan ia ingin merampungkan pitch deck-nya. Anda sudah membantunya dengan total berjalan pendaftaran per bulan dan bagan garis MAU; para investor, kata Bob, akan yakin bahwa Delivr tumbuh baik dari pengguna baru maupun dari MAU.
Namun, Bob ingin menunjukkan bahwa Delivr tidak hanya menarik pengguna baru, tetapi juga mempertahankan pengguna yang sudah ada. Kirimkan kepadanya sebuah tabel tingkat retensi MoM agar ia dapat menyoroti loyalitas pengguna Delivr yang tinggi.
Latihan ini merupakan bagian dari kursus
Menganalisis Data Bisnis di SQL
Instruksi latihan
- Pilih kolom bulan dari
user_monthly_activity, dan hitung tingkat retensi pengguna MoM. - Lakukan join
user_monthly_activitydengan dirinya sendiri berdasarkan ID pengguna dan bulan yang digeser satu bulan ke depan.
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
WITH user_monthly_activity AS (
SELECT DISTINCT
DATE_TRUNC('month', order_date) :: DATE AS delivr_month,
user_id
FROM orders)
SELECT
-- Calculate the MoM retention rates
previous.delivr_month,
ROUND(
___ /
___,
2) AS retention_rate
FROM user_monthly_activity AS previous
LEFT JOIN user_monthly_activity AS current
-- Fill in the user and month join conditions
ON ___
AND ___
GROUP BY previous.delivr_month
ORDER BY previous.delivr_month ASC;