You can achieve that using
CTE[
^].
DECLARE @tbl TABLE(Ids VARCHAR(50))
INSERT INTO @tbl (Ids)
VALUES('1,2,3,5')
INSERT INTO @tbl (Ids)
VALUES('7,11,12,15,33')
INSERT INTO @tbl (Ids)
VALUES('9,10,22,35,43')
INSERT INTO @tbl (Ids)
VALUES('13,19,32,45,53')
;WITH cteIDs AS
(
SELECT ROW_NUMBER() OVER(ORDER BY Ids) AS RowNo, CONVERT(INT, LEFT(Ids, CHARINDEX(',',Ids)-1)) AS Id, RIGHT(Ids,LEN(Ids)-CHARINDEX(',',Ids)) AS Remainder
FROM @tbl
WHERE CHARINDEX(',',Ids)>0
UNION ALL
SELECT RowNo, CONVERT(INT, LEFT(Remainder, CHARINDEX(',',Remainder)-1)) AS Id, RIGHT(Remainder,LEN(Remainder)-CHARINDEX(',',Remainder)) AS Remainder
FROM cteIds
WHERE CHARINDEX(',',Remainder)>0
UNION ALL
SELECT RowNo, Remainder AS Id, NULL AS Remainder
FROM cteIds
WHERE CHARINDEX(',',Remainder)=0
)
SELECT *
FROM cteIds
ORDER BY Id, RowNo
Result:
RowNo Id Remainder
1 1 2,3,5
1 2 3,5
1 3 5
1 5 NULL
3 7 11,12,15,33
4 9 10,22,35,43
4 10 22,35,43
3 11 12,15,33
3 12 15,33
2 13 19,32,45,53
3 15 33
2 19 32,45,53
4 22 35,43
2 32 45,53
3 33 NULL
4 35 43
4 43 NULL
2 45 53
2 53 NULL