You can do a little variation of a Pivot for this one as follows:
--Creating Table
Create Table Ex
(EventID int,
Attendee Varchar(30) )
--Inserting Sample Data
Insert Into Ex
Select 13350, 'John Hart'
Union ALL
Select 13350, 'David Smith'
Union ALL
Select 13350, 'Jane Doe'
Union ALL
Select 13353, 'John Hart'
Union ALL
Select 13353, 'David Smith'
Union ALL
Select 13353, 'Jane Doe'
Union ALL
Select 13357, 'John Hart'
Union ALL
Select 13357, 'David Smith'
Union ALL
Select 13357, 'Jane Doe'
Union ALL
Select 13360, 'John Hart'
Union ALL
Select 13360, 'David Smith'
Union ALL
Select 13360, 'Jane Doe'
--Static Pivot
Select EventID, [Name1] + ', ' + [Name2] + ', ' + [Name3] As Attendees From
(Select *, 'Name' + Cast(ROW_NUMBER() Over (Partition By EventId Order By (Select NULL) ) As Varchar(10) ) As rn From Ex) As a
Pivot
(Max(Attendee) For rn IN ([Name1], [Name2], [Name3]) ) As Pvt
--Dynamic Pivot
Declare @cols varchar(max), @sql varchar(max), @cols1 varchar(max)
Declare @temp Table(Cols varchar(10) )
Insert Into @temp
Select Distinct rn From
(Select *, 'Name' + Cast(ROW_NUMBER() Over (Partition By EventId Order By (Select NULL) ) As Varchar(10) ) As rn From Ex) As a
Select @cols = Coalesce(@cols + ', ', '') + QUOTENAME(Cols) From @temp
Select @cols1 = Coalesce(@cols1 + '+'', ''+', '') + QUOTENAME(Cols) From @temp
Set @sql = 'Select EventID, '+@cols1+' As Attendees From
(Select *, ''Name'' + Cast(ROW_NUMBER() Over (Partition By EventId Order By (Select NULL) ) As Varchar(10) ) As rn From Ex) As a
Pivot
(Max(Attendee) For rn IN ('+@cols+') ) As Pvt'
Execute (@sql)
N 28° 33' 11.93148"
E 77° 14' 33.66384"