WITH order_last AS(
SELECT
order_id,customer_id,
order_date,
rank() over (partition by customer_id order by order_date DESC) AS rk
FROM orders
)
SELECT
a.order_id,
b.customer_name,
a.order_date
FROM order_last AS a
LEFT JOIN customers AS b
ON a.customer_id=b.customer_id
WHERE a.rk=1;

京公网安备 11010502036488号