Jeg antager her, at der altid er præcis 4 dele.
Hvis det er tilfældet, kan du erstatte /
med .
og brug den flotte indbyggede ParseName fungere. Det eneste problem fra dit eksempel er, at det tæller fra slutningen, så du skal være forsigtig med, hvilken del du vil have:
DECLARE @test VARCHAR(max);
SET @test = 'Peter/Parker/Spiderman/Marvel';
SET @test = Replace(@test, '/', '.');
SELECT Parsename(@test, 4),--returns Peter
Parsename(@test, 3),--returns Parker
Parsename(@test, 2),--returns Spiderman
Parsename(@test, 1) --returns Marvel
Hvis der er et variabelt antal dele, skal du finde en strengopdelingsfunktion for at gøre dette for dig, der er ikke en god indbygget. Mange muligheder kan findes ved at søge SO:https://stackoverflow.com/search?q=[sql+server]+string+split
Advarsel - hvis du prøver at bruge et tal med PARSENAME
andet end 1-4, vil resultatet altid være NULL.