tworzyć funkcja fn_MySplit (
@String nvarchar (4000)
)
powrót @ValueTable stołowy ([Wartość] nvarchar (4000))
zaczynać
oznajmiać @NextString nvarchar (4000)
oznajmiać @Pos int
oznajmiać @NextPos int
oznajmiać @Delimeterer nvarchar (1)
oznajmiać @CommaCheck nvarchar (1)
--Initialize
ustawiać @NextString = ''
ustawiać @Delimeter = ","
ustawiać @CommaCheck = prawy (@String, 1)
--Sprawdzać dla powłóczysty Przecinek, jeśli nie istnieć, WSZYWKA
jeżeli (@CommaCheck <> @Delimiter)
ustalony @String = @String + @Delimiter
--Dostawać pozycja pierwszy Przecinek
ustawiać @Pos = charindex (@Delimiter, @String)
ustawiać @NextPos = (1)
--Zapętlać podczas gdy tam być wciąż przecinek w the Sznurek poziom
podczas gdy (@pos <> (0))
zaczynać
ustawiać @NextString = substring (@String, (1), @Pos - 1)
wszywka w @ValueTable ([Wartość]) Wartość (@NextString)
ustalony @String = substring (@String, @pos +1, len (@String))
ustawiać @NextPos = @Pos
ustawiać @pos = charindex (@Delimiter, @String)
końcówka
powrót
końcówka
|