SQL Server 截取字符串函数

  1. 字符串格式:一级部门>>二级部门>>三级部门
  2. 参数说明:@STR:要处理的字符串;
                @Input:要取的结果字符串在源字符串的第几层级,如:要取二级部门,则@Input=2
  3. 函数:
    CREATE FUNCTION fn_COMMON_SubDept(@STR NVARCHAR(500),@Input INT)
    RETURNS NVARCHAR(50)
    AS
    BEGIN
    
        DECLARE @i int
        DECLARE @RESULTSTR NVARCHAR(50)
        DECLARE @RIGHTSTR NVARCHAR(500)
        SET @i=1
        SET @RIGHTSTR=@STR    
        
        
        WHILE @i<=@Input
        BEGIN
            SET @RESULTSTR=SUBSTRING(@RIGHTSTR,0,iif(CHARINDEX('>',@RIGHTSTR)=0,LEN(@RIGHTSTR)+1,CHARINDEX('>',@RIGHTSTR)))
            SET @RIGHTSTR=RIGHT(@RIGHTSTR,iif(LEN(@RIGHTSTR)-LEN(@RESULTSTR)-2<0,0,LEN(@RIGHTSTR)-LEN(@RESULTSTR)-2))
            SET @i=@i+1
        END 
        RETURN @RESULTSTR
    END

     

posted @ 2020-11-26 09:19  来瓶冰镇可乐吧  阅读(153)  评论(0编辑  收藏  举报