Vì CTE không thể cập nhật, bạn cần tham khảo bảng gốc để xóa các hàng. Tôi nghĩ bạn đang tìm kiếm một cái gì đó như thế này:
WITH ToDelete AS
(
SELECT ID,
ROW_NUMBER() OVER (PARTITION BY lastName, firstName ORDER BY ID) AS rn
FROM mytable
)
DELETE FROM mytable USING mytable JOIN ToDelete ON mytable.ID = ToDelete.ID
WHERE ToDelete.rn > 1;