IF OBJECT_ID('dbo.fn_Segundo_Apellido') IS NOT NULL
    DROP FUNCTION dbo.fn_Segundo_Apellido
GO
CREATE FUNCTION dbo.fn_Segundo_Apellido
(
    @pvc_nombre varchar(100)
)
RETURNS char(20)
AS
BEGIN
DECLARE 
    @vvc_cad varchar(20),
    @vti_pos tinyint,
    @vti_pos2 tinyint,

	@vti_long tinyint
    
    SET @vti_pos = CharIndex('/', @pvc_nombre)
	IF @vti_pos = 0
		SET @vti_pos = CharIndex(' ', @pvc_nombre)

    SET @vti_pos2 = CharIndex('/', @pvc_nombre, @vti_pos + 1)
	IF @vti_pos2 = 0
	    SET @vti_pos2 = CharIndex(' ', @pvc_nombre, @vti_pos + 1)

	SET @vti_long = @vti_pos2 - @vti_pos
	IF @vti_long > 0
		SET @vti_long = @vti_pos2 - @vti_pos - 1

    SET @vvc_cad = Substring(@pvc_nombre, @vti_pos + 1, @vti_long)
	SET @vvc_cad = Substring(@vvc_cad,1,20)

    RETURN @vvc_cad   
END

GO

GRANT EXECUTE ON fn_Segundo_Apellido TO PUBLIC
GO
