USE [UserManagement]
GO/****** Object: Table [dbo].[MaskLookup] Script Date: 2/28/2019 11:54:47 AM ******/
DROP TABLE [dbo].[MaskLookup]
GO/****** Object: Table [dbo].[MaskLookup] Script Date: 2/28/2019 11:54:47 AM ******/
SET ANSI_NULLS ON
GOSET QUOTED_IDENTIFIER ON
GOCREATE TABLE [dbo].[MaskLookup](
[oldvalue] [char](1) NULL,
[newvalue] [char](3) NULL
) ON [PRIMARY]
GO
alter FUNCTION dbo.fnMaskValues(@input nvarchar(1000))
RETURNS nvarchar(1000)
AS
BEGIN
declare @output as varchar(1000) =”– Choose the appropriate size
declare @currentValue as char(1)
declare @i int
select @i = 0
while @i < len(@input)
begin
set @i = @i + 1
set @currentValue = Lower(substring(@input, @i, 1))
if EXISTS (select 1 from MaskLookup where oldvalue=@currentValue)
select @output=@output+ RTRIM(LTRIM(newvalue)) from MaskLookup where Lower(oldvalue)=@currentValue;
else
select @output=@output+@currentValue;
end
RETURN @output;
END;