Deze vraag is een duplicaat van een paar andere, maar sommige van de geaccepteerde antwoorden zijn nog steeds de inefficiënte WHILE-lussen of recursieve CTE's. Er zijn drie manieren om een splitsing tot stand te brengen die de prestaties niet ten koste gaat:
-
Getallen / Tally Table:http://www.sqlservercentral.com/articles/Tally +Tabel/72993/ (gratis registratie vereist)
-
XML:https://www.simple-talk.com/blogs/2012/01/05/using-xml-to-pass-lists-as-parameters-in-sql-server/
-
SQLCLR:er zijn talloze voorbeelden hiervan op veel sites, maar je beste (en gemakkelijkste) gok is om ofwel degene te pakken die wordt vermeld in het bovenstaande artikel Numbers / Tally Table OF gewoon SQL#(SQLsharp) (Ik ben de auteur van SQL# maar String_Split en String_Split4k zijn in de gratis versie).