Well i have table which have some records with same address_id, i want to delete them all or (if it's possible) to delete all after first one, for example:
id | person_id | address_id
1 80 3
2 226 3
3 31 5
4 46 9
5 11 9
6 123 9
In this case i want to delete records with id (2, 5,6).
Here is my query, but i get error:
You can't specify target table 'person_address' for update in FROM clause
DELETE FROM person_address WHERE id IN (
SELECT address_id
FROM person_address
WHERE person_address.person_id < 100
GROUP BY address_id
HAVING count(*) > 1
)
Select works fine.