select 
    order_id,
    customer_name,
    order_date
from 
    (select *,
    row_number() over(partition by customer_id order by order_date desc) as rk
    from orders) o
join customers c on o.customer_id=c.customer_id
where rk=1
order by customer_name;