You have tagged your question with SQL Server 2016, in SQL Server 2016 there is a new function STRING_SPLIT
.
In SQL Server 2016 your query should be as simple as:
declare @tab table ([user_name] varchar(10),Unit varchar(100))
insert into @tab
VALUES ('ABC','1,2')
SELECT t.[user_name]
, Value as Unit
FROM @tab t
CROSS APPLY STRING_SPLIT(t.Unit , ',')
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…