créer le fn_MySplit de fonction (
@String nvarchar (4000)
)
renvoie la table @ValueTable ([valeur] nvarchar (4000))
commencer
déclarer @NextString nvarchar (4000)
déclarer les @Pos international
déclarer les @NextPos international
déclarer le @Delimeterer nvarchar (1)
déclarer le @CommaCheck nvarchar (1)
--Initialiser
placer @NextString = ''
placer le @Delimeter = « , »
placer le @CommaCheck = droit (@String, 1)
--Vérifier la virgule de remorquage, sinon existe, S'INSÈRE
si (@Delimiter <> de @CommaCheck)
@String réglé = @String + @Delimiter
--Obtenir la position de la première virgule
placer les @Pos = le charindex (le @Delimiter, @String)
placer les @NextPos = 1
--Faire une boucle tandis qu'il y a toujours une virgule dans la corde des niveaux
tandis que (@pos <> 0)
commencer
placer @NextString = la sous-chaîne (@String, 1, @Pos - 1)
insérer dans ([valeur]) des valeurs @ValueTable (@NextString)
placer @String = sous-chaîne (@String, les @pos +1, len (@String))
placer les @NextPos = les @Pos
placer les @pos = le charindex (le @Delimiter, @String)
extrémité
retour
extrémité
|