merge into CIDADE C using EMPRESA E on trim(E.CIDADE) = trim(C.DESCCIDADE) and trim(E.UF) = trim(C.UF) when matched then update set DESCCIDADE = DESCCIDADE || '*' --when matched and C.UF='RS' then /// tb pode ser dessa forma -- update set DESCCIDADE = DESCCIDADE || '**' when not matched then insert (CODCIDADE, DESCCIDADE, UF, CODEXPORTA) values ((Select (coalesce(max(C2.CODCIDADE),0)+1) from CIDADE C2), E.CIDADE, E.UF, '0000') ;