Declare @abc varchar(max)='5,4,1',
@xyz varchar(max)='1,2,3';
select value[A] from  string_split(@abc,',')
select value[B] from  string_split(@xyz,',')  
I need this result in same table
A   B
5   1
4   2
1   3
Declare @abc varchar(max)='5,4,1',
@xyz varchar(max)='1,2,3';
select value[A] from  string_split(@abc,',')
select value[B] from  string_split(@xyz,',')  
I need this result in same table
A   B
5   1
4   2
1   3
 
    
     
    
    You may use row_number() to give unique number to each record of your string, then apply join on behalf of that generated row_number().
Sample is like this.
   select [A], [B] from 
   (
       select row_number() over (order by (select 100)) as Slno, value as  [A] from  string_split(@abc,',')
   ) as t1 
   full outer join 
   (
        select row_number() over (order by (select 100)) as Slno, value as  [B] from  string_split(@xyz,',')
   ) as t2 
   on t1.slno=t2.slno
