私はOracle Sqlクエリに精通していないため、別の(結合)テーブルのフィールドを含む制約を満たす必要があるテーブルからいくつかの行を削除する際に問題に直面しています。つまり、JOINを含む行を削除するクエリを書きたいのです。
私の場合、フィールドで結合されたテーブルProductFilters
と別のテーブルがあります。200 以上の行を削除したいのですが、それらが参照する製品の名前は「マーク」です (名前は製品のフィールドです) 。Products
ProductFilters.productID = Products.ID
ProductFilters
ID
Oracle の削除クエリで JOIN が使用できるかどうかを最初に知りたいです。そうでない場合、このクエリを機能させるためにどのように変更する必要がありますか? そのフォームでエラーが表示されるためです。
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'
);