WITH order_date_rank AS (
    SELECT
        o.order_id,
        c.customer_name,
        o.order_date,
        ROW_NUMBER() OVER (PARTITION BY o.customer_id ORDER BY o.order_date DESC) AS date_rank
    FROM
        orders AS o INNER JOIN customers AS c 
        ON o.customer_id=c.customer_id
)
SELECT
    order_id,
    customer_name,
    order_date
FROM 
    order_date_rank
WHERE
    date_rank=1