, :
declare @data table (
id int,
email varchar(100)
)
insert into @data
(id, email)
select 1, 'xxx@gmail.com' union all
select 2, 'yyy@gmial.com' union all
select 3, 'zzzgimail.com'
declare @errors table (
error varchar(100),
correct varchar(100)
)
insert into @errors
(error, correct)
select '@gmial.com', '@gmail.com' union all
select 'gimail.com', '@gmail.com'
select d.id,
d.email,
isnull(replace(d.email, e.error, e.correct), d.email) as CorrectedEmail
from @data d
left join @errors e
on right(d.email, LEN(e.error)) = e.error