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