SQL Server equivalent of substring_index function in MySQL

后端 未结 5 581
旧巷少年郎
旧巷少年郎 2020-11-29 11:17

I am trying to port a query from MySQL to SQL SERVER 2012.

How do i write an equivalent for MySQL\'s substring_index()?

MySQL SUBSTRING_INDEX() returns the

5条回答
  •  忘掉有多难
    2020-11-29 11:59

        CREATE FUNCTION FN_SUBSTRING_INDEX
        (
           @TEXTO NVARCHAR(200),
          @SUBSTRING_INDEX NVARCHAR(10),
           @DESPLAZAMIENTO INT
        )
        RETURNS NVARCHAR(200)
        AS
    
        BEGIN
    
    
            DECLARE @indiceSubstring INT
            DECLARE @RESULTADO NVARCHAR(200)
            SELECT @indiceSubstring = CHARINDEX(@SUBSTRING_INDEX,@TEXTO)
    
            IF @DESPLAZAMIENTO > 0
            BEGIN
                SELECT @RESULTADO=SUBSTRING(@TEXTO,@indiceSubstring+@DESPLAZAMIENTO+1,LEN(@TEXTO))
            END 
            ELSE
            BEGIN
                SELECT @RESULTADO=SUBSTRING(@TEXTO,0,@indiceSubstring-@DESPLAZAMIENTO-1)
            END 
    
        RETURN @RESULTADO
        END
        GO
    

    to right select dbo.FN_SUBSTRING_INDEX(N'prueba','ue',1);

    to left select dbo.FN_SUBSTRING_INDEX(N'prueba','ue',-1);

提交回复
热议问题