oracle-sql UPDATE if conditions are true in multiple tables
oracle-sql UPDATE if conditions are true in multiple tables
我在 sql 中遇到更新语句的问题。如果条件为真(如我的示例所示),我想更新表 1 中的参数 1。
目前我正在尝试这个:
update table1
set table1.param1 = 1
from (select * table1, table2
where table1.param2=table2.paramA
and table2.paramB='123456'
and table1.param3='XXX123');
你可以试试这个。
update (select *
from table1 join table2
on table1.param2=table2.paramA
where table2.paramB='123456'
and table1.param3='XXX123') t
set t.param1 = 1
您不需要在子查询中加入。您可以一次性完成加入和更新。请尝试以下查询以获取您的更新。
update table1 join table2 on table1.param2=table2.paramA
set table1.param1 = 1
where table2.paramB='123456'
and table1.param3='XXX123';
我在 sql 中遇到更新语句的问题。如果条件为真(如我的示例所示),我想更新表 1 中的参数 1。
目前我正在尝试这个:
update table1
set table1.param1 = 1
from (select * table1, table2
where table1.param2=table2.paramA
and table2.paramB='123456'
and table1.param3='XXX123');
你可以试试这个。
update (select *
from table1 join table2
on table1.param2=table2.paramA
where table2.paramB='123456'
and table1.param3='XXX123') t
set t.param1 = 1
您不需要在子查询中加入。您可以一次性完成加入和更新。请尝试以下查询以获取您的更新。
update table1 join table2 on table1.param2=table2.paramA
set table1.param1 = 1
where table2.paramB='123456'
and table1.param3='XXX123';