MySQL nemá ekvivalent output
nebo returning
doložky poskytované jinými databázemi. Nejlepším řešením je dočasný stůl:
CREATE TABLE TheDeletedIds as
SELECT t1.id
FROM t1 LEFT JOIN
t2
ON t1.t2_id = t2.id
WHERE t2.id IS NULL OR t2.is_valid = false;
DELETE t1
FROM t1
WHERE t1.id IN (SELECT id FROM TheDeletedIds);
Potom tabulka, kterou jste právě vytvořili, má požadovaná ID.
Poznámka:Pro mazání je důležité použít nově vytvořenou tabulku. V opačném případě by jiné vlákno/proces mohl změnit data mezi okamžikem zachycení ID a okamžikem, kdy je smažete.