We have varchar2(250) columns that have various text data we want to replace with other specific text.

We have record as string like:

123abc...&amp;quot;&amp;quot;

and we want to replace each &amp; and each quot;

with 99 and 88 respectively.

I have tried REPLACE and REPLACE with CASE statements and we've tried REGEXP_REPLACE.
The problem seems that Oracle SQL will only replace the first one listed and ignores
any other 'find this and replace with this' after in the string.

Here is an example of the SQL:

select
case
when "big_text_column" like '%&amp;%' then replace("big_text_column", '&amp;' , '99')
when "big_text_column" like '%quot;%' then replace("big_text_column", 'quot;' , '88')
else "big_text_column"
end as "big_text_column"
from table_with_big_text_column;

The result set 'fixes' the &amp; ones but does nada for the quot; replacement;
123abc...99quot;99quot;

I would like it to return:
123abc...99889988

How can I get it to change both (or more if needed) to their respective 99 and 88 ? We are not familiar with PL/SQL.