17,382
社区成员




drop table test;
create table test (state number, moduleroleid varchar2(20));
insert into test values (1, '1');
insert into test values (0, '1');
insert into test values (null, '1');
insert into test values (1, '2');
select * from test;
STATE MODULEROLEID
---------- ------------------------------
1 1
0 1
1
1 2
update test set state=decode(state, 1, 0, 1) where moduleroleid = '1';
select * from test;
STATE MODULEROLEID
---------- ------------------------------
0 1
1 1
1 1
1 2
-- state为1的变成0了,state不为1的都变成1了
-- 你要的不是这样么?