Order Histories, One Step Back:Compare Current and Previous Order Dates for Each Customer
Intermediate
List each order along with the date of the previous one placed by the same customer.
Xorthax wants to analyze customers' order patterns by looking at their previous orders. Write a query to display the current order and the previous order date for every customer.
Write Your Query
Answer:
select customerid,
orderid,
orderdate,
lag(orderdate) over (partition by customerid
order by orderdate asc) as previousorderdate
from orders;
Explanation:
This mirrors customer behavior analysis, helping businesses study order recurrence and track purchasing intervals.
You’ll practice comparing sequential records within groups to identify and analyze previous transactional data.
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.