How to replace multiple substrings with SQL

The CASE command allows you to perform actions based on IF / ELSE logic. When combined with the REPLACE command, it allows you to replace an arbitrary amount of substrings.

-- Works in PostgreSQL, MySQL, SQL Server, and Oracle select case when my_string like '%(RES)%' then replace(my_string, '(RES)', '') when my_string like '%(R)%' then replace(my_string, '(R)', '') else my_string end as my_string_without_characters from sample_table;

sample_table

my_string
Micheal Jackson (RES)
Tom Brady (R)
Tony Stark

Query results

my_string
Micheal Jackson
Tom Brady
Tony Stark

Explanation

Here we are checking each row for the existence of a substring using the CASE and LIKE commands. If the string contains the subtring we are looking to remove, we use the REPLACE command to replace it with an empty string (effectively deleting it.)