Species Transaction Wrap-Up:Identify the Most Recent Transaction Date by Customer Species
Intermediate
Find the latest transaction date for each species in the galaxy.
Xorthax is curious about the last transaction date for customers of each species. Write a query to display the last transaction date for each species.
Write Your Query
Answer:
select distinct c.species,
last_value(t.transactiondate) over (partition by c.species
order by t.transactiondate asc rows between unbounded preceding and unbounded following) as lasttransactiondate
from orders o
join transaction t on o.orderid = t.orderid
join customers c on o.customerid = c.customerid;
Explanation:
This represents transaction analysis where businesses monitor the latest activity by customer segments to track engagement over time.
You’ll practice grouping and ordering data to determine the most recent event within each category of customers.
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.