Тук приемам, че винаги има точно 4 части.
Ако е така, можете да замените /
с .
и използвайте добре вградения ParseName функция. Единственият проблем от вашия пример е, че се брои от края, така че трябва да внимавате коя част искате:
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
Ако има променлив брой части, ще трябва да намерите функция за разделяне на низове, за да направите това вместо вас, няма вградена добра. Много опции могат да бъдат намерени при търсене SO:https://stackoverflow.com/search?q=[sql+server]+string+split
Предупреждение - ако се опитате да използвате число с PARSENAME
различен от 1-4, резултатът винаги ще бъде NULL.