Я не очень хорошо знаком с Oracle Sql Queries, поэтому мне приходится сталкиваться с проблемой удаления некоторых строк из таблицы, которая должна выполнять ограничение, которое включает в себя поля другой (присоединения) таблицы. Другими словами, я хочу написать запрос для удаления строк, включая JOIN.
В моем случае у меня есть таблица ProductFilters
, а другая таблица Products
связана с полями ProductFilters.productID = Products.ID
. Я хочу удалить строки из ProductFilters
с ID
выше или равным 200, а продукт, на который они ссылаются, имеет имя "Mark" (имя - это поле в Product).
Я хотел бы получить информацию изначально, если JOIN является приемлемым в Delete Query в Oracle. Если нет, как мне изменить этот запрос, чтобы он работал, поскольку в этой форме я получаю сообщение об ошибке:
DELETE From PRODUCTFILTERS pf
where pf.id>=200
And pf.rowid in
(
Select rowid from PRODUCTFILTERS
inner join PRODUCTS on PRODUCTFILTERS.PRODUCTID = PRODUCTS.ID
And PRODUCTS.NAME= 'Mark'
);