select
customer_id,
customer_name,
product_name as latest_order
from
(
select
o.customer_id,
c.customer_name,
p.product_name,
row_number() over (
partition by
c.customer_name
order by
o.order_date desc
) rk
from
orders o
join customers c on o.customer_id = c.customer_id
join products p on o.product_id = p.product_id
) tt
where
rk = 1
order by
customer_id;

京公网安备 11010502036488号