Customer Frequency Classes:Segment Customers by Order Frequency into Three Transaction Tiers
Intermediate
Group customers by how often they place orders at Xorthax's post.
Xorthax wants to segment customers into 3 groups based on the total number of orders they placed. Write a query to assign each customer to a transaction frequency tier.
Write Your Query
Answer:
select customerid,
count(orderid) as totalorders,
ntile(3) over (
order by count(orderid) desc) as frequencytier
from orders
group by customerid;
Explanation:
It models customer segmentation where businesses categorize clients by purchasing frequency to identify high-activity and low-activity groups.
You’ll practice grouping and dividing ordered results into balanced tiers for customer activity analysis.
This problem is labeled as Intermediate. It assumes you’ve written a few window function queries before, but you don’t need to be an expert. Use the hints and explanations if you get stuck — they’re there to help you think through the logic.
Yes. Every problem comes with optional hints you can reveal one at a time, plus a fully worked step-by-step solution. You decide how much help you want while practicing.
All problems on PracticeWindowFunctions.com are completely free and can be solved without creating an account. Right now there are over 80 practice problems, with new ones added regularly.