Monday

LastIndexOf function in SQL Server

A simple yet powerful user defined function (UDF), you may need to use on regular basis while doing SQL coding.
Copy and Paste and Enjoy!
ALTER FUNCTION [LastIndexOf]
(
 @String VARCHAR(1024),
 @Char VARCHAR(10),
 @NumberOfOccurrence INT
)
RETURNS INT
AS
BEGIN
 DECLARE @Iteration INT
 DECLARE @Tpl VARCHAR(100)
 DECLARE @Temp INT
 SET @Temp = 1
 SET @Iteration = LEN(@String)
 WHILE @Iteration >= 1
 BEGIN
  SET @Tpl = SUBSTRING(@String, @Iteration, LEN(@Char))
  IF UPPER(@Tpl) = UPPER(@Char)
  BEGIN
   IF @Temp = @NumberOfOccurrence
    RETURN @Iteration
   SET @Temp = (@Temp + 1)
  END
  SET @Iteration = (@Iteration - 1)
 END
 RETURN 0
END

No comments:

Post a Comment

Your comments are highly appreciated!