W manulau znalazłem taką konstrukcję:
Cytat
DELETE t1,t2 FROM t1,t2,t3 WHERE t1.id=t2.id AND t2.id=t3.id
or
DELETE FROM t1,t2 USING t1,t2,t3 WHERE t1.id=t2.id AND t2.id=t3.id
Niestety, nie udało mi się tego uruchomić.
tabela rodziców: kategorie[id, ...]
tabela dzieci: produkty[id, kat, ...]
Zapytanie:
Cytat
DELETE FROM produkty
USING produkty, kategorie
WHERE kategorie.id = produkty.kat
and kategorie.id IS NULL
jest co prawda poprawne, ale usuwa 0 rekordów, choć zapytanie typu:
Cytat
SELECT produkty. * , kategorie. *
FROM produkty
LEFT JOIN kategorie
ON kategorie.id = produkty.kat
WHERE kategorie.id IS NULL
wyświetla wszystkie potrzebne rekordy.
Akcja dzieje się na MySQL 4.0.x
Jak to ugryść?