Попытка сделать это (работает в SQL Server):
WITH X AS (), Y AS (), Z AS ()
DELETE FROM TBL
WHERE TBL.ID IN (SELECT ID FROM Z);
Это работает в Oracle:
WITH X AS (), Y AS (), Z AS ()
SELECT * FROM TBL
WHERE TBL.ID IN (SELECT ID FROM Z);
Но DELETE не делает: ORA-00928: отсутствует ключевое слово SELECT
Мои подзапросы довольно большие, есть ли другой синтаксис, чтобы заставить это работать?