Jeśli chcesz zachować po jednym rejestrze dla każdego nazwiska:
delete from ap
where ap.id > (select min(ap2.id) from ap ap2 where ap2.name = ap.name)
Jeśli chcesz zachować po jednym rejestrze dla każdego nazwiska:
delete from ap
where ap.id > (select min(ap2.id) from ap ap2 where ap2.name = ap.name)