How to get column values to comma separated value in SQL

  1. --Create sample table  
  2. Create Table #Temp   
  3. (  
  4.    PkValue int  
  5. )  
  6.   
  7. --Insert sample data  
  8. Insert Into #Temp Values (1)  
  9. Insert Into #Temp Values (2)  
  10. Insert Into #Temp Values (3)  
  11. Insert Into #Temp Values (1)  
  12. Insert Into #Temp Values (2)  
  13. Insert Into #Temp Values (3)  
  14.   
  15. --Declare and initialise variable  
  16. Declare @Ids nvarchar(max)  
  17. Set @Ids = ''  
  18.   
  19. --Get distinct comma seperated values into variable  
  20. Select @Ids = (@Ids + Coalesce(Case when CHARINDEX(Convert(nvarchar(max),PkValue) + ',',@Ids) > 0 Then '' Else convert(nvarchar(max),PkValue)+ ',' End,'' ))  
  21. From #Temp   
  22.   
  23. --Verify output with sample data used  
  24. Select @Ids  
  25. Select * From #Temp   
  26.   
  27. --Drop sample table  
  28. Drop Table #Temp