Zde vycházím z toho, že jsou vždy přesně 4 části.
Pokud ano, můžete nahradit /
s .
a použijte pěkné vestavěné ParseName funkce. Jediný problém z vašeho příkladu je, že se počítá od konce, takže byste si měli dávat pozor na to, kterou část chcete:
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
Pokud existuje proměnný počet částí, budete muset najít funkci pro dělení řetězců, která to udělá za vás, není tam zabudovaná žádná dobrá. Mnoho možností lze najít hledáním SO:https://stackoverflow.com/search?q=[sql+server]+string+split
Varování – pokud se pokusíte použít číslo s PARSENAME
jiný než 1-4, výsledek bude vždy NULL.