Ta en titt på den här funktionen. Jag har gjort liknande knep för att dela upp och överföra data i Oracle. Slinga över data genom att infoga de avkodade värdena i en temporär tabell. Grejen med kloster är att MS låter dig göra detta i farten, medan Oracle kräver en explicit temptabell.
MS SQL Split-funktion
Bättre Split-funktion
Redigera av författare: Detta fungerade utmärkt. Den slutliga koden såg ut så här (efter att ha skapat splitfunktionen):
select pv.productid, colortable.items as color
from product p
cross apply split(p.color, ',') as colortable