To obejście, ale działa:
Utwórz nową kolumnę i nazwij ją do_delete
, czy cokolwiek, co czyni go maleńkim. Następnie wykonaj On Duplicate Key Update do_delete = 1;
W zależności od wersji/połączenia MySQL możesz wykonać wiele zapytań w tej samej instrukcji. Jeśli jednak nie, po prostu uruchom osobne zapytanie zaraz po nim. Tak czy inaczej, następne zapytanie byłoby po prostu:Delete From [table] Where do_delete = 1;
. W ten sposób, jeśli jest to nowy wpis, niczego nie usunie. Jeśli nie był to nowy wpis, oznaczy go do usunięcia, a następnie możesz go usunąć.