DECLARE abc CURSOR FOR SELECT id,aa FROM myTable
OPEN abc
FETCH NEXT FROM abc INTO @id,@aa
WHILE (@@FETCH_STATUS = 0)
BEGIN
SET @c1=''
SET @C2=''
SET @c3=''
SET @C4=''
SET @i=1
IF LEN(LTRIM(@aa))>0
BEGIN
SET @ipos=CHARINDEX(',',@aa,1)
WHILE @ipos>0
BEGIN
IF @i=1 SET @c1=LEFT(@aa,@ipos-1)
ELSE IF @i=2 SET @c2=LEFT(@aa,@ipos-1)
ELSE IF @i=3 SET @c3=LEFT(@aa,@ipos-1)
ELSE SET @c4=LEFT(@aa,@ipos-1)
SET @i=@i+1
IF @i>4 BREAK
SET @aa=SUBSTRING(@aa,@ipos+1,250)
SET @ipos=CHARINDEX(',',@aa,1)
END
IF @i<5
BEGIN
IF @i=1 SET @c1=@aa
ELSE IF @i=2 SET @c2=@aa
ELSE IF @i=3 SET @c3=@aa
ELSE SET @c4=@aa
END
END
UPDATE myTable
SET c1=@c1,
c2=@c2,
c3=@c3,
c4=@c4
WHERE id=@id
FETCH NEXT FROM abc INTO @id,@aa
END
CLOSE abc
DEALLOCATE abc