Sql 更新在Oracle中不起作用,2个表

Sql 更新在Oracle中不起作用,2个表,sql,oracle,inner-join,Sql,Oracle,Inner Join,这在Oracle中不起作用,请帮助 update mrp_indeksy mrp inner join indeksy i on i.indeks_czesci=mrp.indeks_czesci set mrp.jest_w_raporcie_pzm='N' where i.id_grupy='WG' and mrp.kod_uzyskania='P' and i.nazwa_czesci NOT LIKE 'ZAWI%' 通常在Oracle中,使用WHERE EXISTS进行此类更新查询

这在Oracle中不起作用,请帮助

update mrp_indeksy mrp
inner join indeksy i
on i.indeks_czesci=mrp.indeks_czesci 
set mrp.jest_w_raporcie_pzm='N'
where i.id_grupy='WG' and mrp.kod_uzyskania='P' and i.nazwa_czesci NOT LIKE 'ZAWI%'

通常在Oracle中,使用
WHERE EXISTS
进行此类更新查询:

UPDATE mrp_indeksy mrp
   SET mrp.jest_w_raporcie_pzm='N'
 WHERE mrp.kod_uzyskania='P'
   AND EXISTS ( SELECT 1 FROM indeksy i
                 WHERE i.indeks_czesci = mrp.indeks_czesci
                   AND i.id_grupy='WG'
                   AND i.nazwa_czesci NOT LIKE 'ZAWI%' )

您可以阅读更多关于如何进行此类更新的信息。除了上面的
WHERE EXISTS
方法之外,您还可以执行“可更新视图”。但是,您不能将更新与
JOIN
update组合使用。。。FROM
不是有效的Oracle语法。

为什么否决票。。。想解释一下吗?有用的答案和更多信息的链接!这个问题已经在堆栈溢出上得到了回答。请检查此问题:我建议您在发布之前在网站上搜索相关问题。