WITH
t1 AS (
SELECT
a.order_id,
b.customer_name,
a.order_date,
ROW_NUMBER() OVER(PARTITION BY b.customer_name ORDER BY a.order_date DESC) AS rk
FROM orders AS a
INNER JOIN customers AS b ON a.customer_id = b.customer_id
ORDER BY b.customer_name
)
SELECT
order_id,
customer_name,
order_date
FROM t1
WHERE rk = 1
ORDER BY customer_name;

京公网安备 11010502036488号