Here is an intersting way of doing this:CREATE FUNCTION dbo.concatStr( @curStr varchar(4000), @newStr varchar(100)) RETURNS varchar(4000) AS BEGIN Return (isnull(@curStr+',','')+@newStr)ENDGoDeclare @myTable table (id int, name varchar(100), list varchar(4000))Insert Into @myTableSelect 1, 'Bill', nullUnion Select 1, 'Bob', nullUnion Select 2, 'Ken', nullUnion Select 2, 'Ryan', nullDeclare @curStr varchar(4000), @key varchar(4000)Update @myTableSet @curStr = list = case when @key = convert(varchar,id) then dbo.concatStr(@curStr,name) else name end, @key = idFrom @myTableSelect id, list From @myTable Awhere len(list) = (select max(len(list)) from @myTable where id = A.id)goDrop function dbo.concatStr
Corey