oracle db-如果联接没有结果,则更新表

时间:2018-07-19 08:10:49

标签: sql oracle oracledb

在MS SQL中,我可以执行以下操作:

if not exists (select * 
from table_1
inner join table_2 on table_1.id = table_2.id
where table_1.y = 200 and table_2.x =5)
begin
insert into table_1  values (200,1000)
insert into table_2 values (5,1000)
end;

我可以在Oracle DB中做类似的事情吗?

1 个答案:

答案 0 :(得分:0)

一种方法是使用变量检查所需的内容,然后决定要做什么。例如:

declare
  vCheck   number;
begin
  select count(*)
  into vCheck
  from ...
  where ...;
  --
  if vCheck = 0 then
    insert ...;
    insert ...;
  end if;
end;

您可以根据需要执行的检查使用一个或多个变量,然后调整IF条件以实现更复杂的逻辑。