Get comma separated result






1.18/5 (6 votes)
Nov 15, 2007

25184
Create command for getting comma seperated value
Introduction
Here is some help for people who are awaiting for output from Sql server command described as below. As we are having one table named as MyTable in which we are having two columns named as Dept which contains name of all department within company and another column named as EmpName contains name of all the employess working in the company related to that department.
Now, with the store procedure we are getting all the department name in first column and in second column we are having all the employee names comma separated. So with the below code we will get the same out put.
Using the code
I have table name : MyTable.
Columns : Dept, EmpName
I have table output like below:
Dept | EmpName |
Software | Emp1 |
Software | Emp2 |
Software | Emp3 |
Account | Emp4 |
Account | Emp5 |
And I want output as below.
Dept | EmpName |
Software | Emp1, Emp2, Emp3 |
Account | Emp4, Emp5 |
// // Code is shown below // SET ANSI_WARNINGS OFF Declare @ono varchar(50) DECLARE My_Cursor CURSOR FOR SELECT distinct Dept FROM MyTable drop table tmp create table tmp(ono varchar(50),allname varchar(50)) OPEN My_Cursor FETCH NEXT FROM My_Cursor into @ono WHILE @@FETCH_STATUS = 0 BEGIN DECLARE @EmployeeList varchar(100) set @EmployeeList = null SELECT @EmployeeList = COALESCE(@EmployeeList + ', ', '') + CAST(EmpName AS varchar(5)) FROM MyTable where Dept = @ono insert into tmp(ono,allname) values(@ono,@EmployeeList) FETCH NEXT FROM My_Cursor into @ono END CLOSE My_Cursor DEALLOCATE My_Cursor select * from tmp
Points of Interest
Change anything as per your requirement. Happy coding.