get a comma delimited string from rows [duplicate]

Solution 1:

Use STUFF and FOR XML:

Create and populate sample table (Please save us this step in your future questions)

DECLARE @T AS TABLE
(
    Name varchar(10)
)

INSERT INTO @T VALUES
('John'),
('Vicky'),
('Sham'),
('Anjli'),
('Manish')

The query:

SELECT STUFF((
    SELECT ',' + Name
    FROM @T
    FOR XML PATH('')
), 1, 1, '') As [output];

Results:

output
John,Vicky,Sham,Anjli,Manish

Solution 2:

Assuming That your column name is NAME And table name is MYTABLE you can use the Following query:

DECLARE @strTemp VARCHAR(MAX)

SET @strTemp = ''

SELECT @strTemp  = @strTemp + ISNULL(NAME,'') + ','
FROM MYTABLE

--Remove last comma
SET @strTemp = SUBSTRING(@strTemp ,1,LEN(@strTemp ) -1)

--Get Result
SELECT @strTemp 

You can filter null records using the following

SELECT @strTemp  = @strTemp + NAME + ','
FROM MYTABLE
WHERE NAME IS NOT NULL