Write a query to find churn rate from users
Last updated: January 10, 2026
Quick Overview
Write a SQL query to calculate churn rate from the users table, considering nulls and duplicates.
Supabase
January 10, 202612
8
4,275 solved
Write a SQL query to calculate churn rate from the users table, considering nulls and duplicates.
This question from Supabase's Technical Screen tests practical data skills. The interviewer wants to see clean, efficient queries that handle edge cases like NULLs, duplicates, and large datasets.
What the Interviewer Expects
- Solve complex analytical problems with elegant, readable SQL
- Optimize queries for large-scale datasets with partitioning and indexing
- Use recursive CTEs, lateral joins, and advanced window functions
- Design the data model alongside the query solution
- Discuss trade-offs between SQL and programmatic approaches (Python/pandas)
- Consider the operational aspects: query scheduling, incremental processing
Key Topics to Cover
How to Approach This
- Clarify the schema and expected output format before writing queries.
- Use CTEs (WITH clauses) to break complex queries into readable steps.
- Consider window functions (ROW_NUMBER, RANK, LAG, LEAD) for ranking and sequential analysis.
- Watch for NULLs, duplicates, and edge cases in JOINs and GROUP BY.
- For pandas, prefer vectorized operations over row-by-row iteration.
Possible Follow-up Questions
- How would you validate the correctness of your query results?
- Can you rewrite this without using subqueries?
- What would you do if this query needs to run every 5 minutes?
- How would you optimize this query for a table with 100 million rows?
Sharpen Your Skills on Codemia
Practice similar problems with our interactive workspace, get AI feedback, and track your progress.
Practice SQL ProblemsSample Answer
Problem Understanding
To calculate the churn rate from the users table, we need to define what 'churn' means in this context. Typically, churn refers to the percentage of users who stop engaging with a service over a speci...
Approach
- Identify the relevant fields in the users table, such as user_id, last_login_date, and created_at.
- Use a Common Table Expression (CTE) to filter users based on their last login date within the...