चूंकि सीटीई अद्यतन करने योग्य नहीं है, इसलिए आपको पंक्तियों को हटाने के लिए मूल तालिका का संदर्भ लेना होगा। मुझे लगता है कि आप कुछ इस तरह की तलाश कर रहे हैं:
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;