Een manier om op die manier om te gaan met het "bijsnijden" van komma's is het gebruik van een CASE
verklaring:
CASE
WHEN str LIKE ',%,' THEN SUBSTRING(str, 2, LEN(str)-2)
WHEN str LIKE ',%' THEN RIGHT(str, LEN(str)-1)
WHEN str LIKE '%,' THEN LEFT(str, LEN(str)-1)
ELSE str
END
Dit spreekt voor zich:de CASE
verklaring beschouwt drie situaties -
- Als de tekenreeks
str
heeft komma's aan beide kanten, - Als de tekenreeks
str
begint met een komma, maar eindigt niet met één, en - Als de tekenreeks
str
eindigt op een komma, maar begint niet in één.
In het eerste geval worden de eerste en de laatste tekens verwijderd; in het tweede geval wordt het meest linkse teken verwijderd; in het laatste geval wordt het volgteken verwijderd.