Как объеденить строки?

_енот_
Дата: 27.02.2010 09:41:17
Есть вот такой вот запрос:
SELECT
	d.FIO,
	i.ArestDate
	,event15 = case when ev.EventID = 15 then ev.EventDate end
	,event16 = case when ev.EventID = 16 then ev.EventDate end 
FROM 
	Table1 d with (nolock)
	JOIN Table2 i with (nolock) ON i.FIO = d.FIO
	left join Table3 ev on ev.FIO = d.FIO and (EventID = 16 or EventID = 15)
И есть результат запроса:
иванов иван иваныч	2009-08-11 00:00:00.000	NULL	2009-03-06 00:00:00.000
иванов иван иваныч	2009-08-11 00:00:00.000	2009-08-11 00:00:00.000	NULL
Можно ли как то сделать, чтобы они не дублировались, а получалась одна запись, и вместо null соответственно своя дата?
Ох...ий программизд
Дата: 27.02.2010 09:45:50
_енот_,

они и не дублируются, еслиф что
Guf
Дата: 27.02.2010 09:47:00
_енот_,

SELECT
	d.FIO,
	i.ArestDate
	,event15 = case when ev1.EventID = 15 then ev1.EventDate end
	,event16 = case when ev2.EventID = 16 then ev2.EventDate end 
FROM 
	Table1 d with (nolock)
	JOIN Table2 i with (nolock) ON i.FIO = d.FIO
	left join Table3 ev1 on ev1.FIO = d.FIO and ev1.EventID = 15
	left join Table3 ev2 on ev2.FIO = d.FIO and ev2.EventID = 16
_енот_
Дата: 27.02.2010 09:48:14
Ох...ий программизд
они и не дублируются, еслиф что

ну да. чисто технически не дублируются. но вы же поняли о чем я - чтобы фио было одно, а 2 даты "соеденились" как бы в одну строчку.
_енот_
Дата: 27.02.2010 09:49:10
Guf,

Спасибо, как все просто и гениально! :)
iap
Дата: 27.02.2010 09:52:10
SELECT
	d.FIO,
	i.ArestDate
	,event15 = MAX(case when ev.EventID = 15 then ev.EventDate end)
	,event16 = MAX(case when ev.EventID = 16 then ev.EventDate end)
FROM 
	Table1 d with (nolock)
	JOIN Table2 i with (nolock) ON i.FIO = d.FIO
	LEFT JOIN Table3 ev on ev.FIO = d.FIO and (EventID = 16 or EventID = 15)
GROUP BY d.FIO,i.ArestDate
aleks2
Дата: 27.02.2010 11:05:25
iap
SELECT
	d.FIO,
	i.ArestDate
	,event15 = MAX(case when ev.EventID = 15 then ev.EventDate end)
	,event16 = MAX(case when ev.EventID = 16 then ev.EventDate end)
FROM 
	Table1 d with (nolock)
	JOIN Table2 i with (nolock) ON i.FIO = d.FIO
	LEFT JOIN Table3 ev on ev.FIO = d.FIO and (EventID = 16 or EventID = 15)
GROUP BY d.FIO,i.ArestDate


Ну... что-то не кошерно это

SELECT
	d.FIO,
	i.ArestDate
	,event15 = ev15.EventDate 
	,event16 = ev16.EventDate 
FROM 
	Table1 d with (nolock)
	JOIN Table2 i with (nolock) ON i.FIO = d.FIO
	left join (select * from Table3 WHERE EventID = 15) ev15 on ev15.FIO = d.FIO 
	left join (select * from Table3 WHERE EventID = 16) ev16 on ev16.FIO = d.FIO 
iap
Дата: 27.02.2010 11:19:38
aleks2
iap
SELECT
	d.FIO,
	i.ArestDate
	,event15 = MAX(case when ev.EventID = 15 then ev.EventDate end)
	,event16 = MAX(case when ev.EventID = 16 then ev.EventDate end)
FROM 
	Table1 d with (nolock)
	JOIN Table2 i with (nolock) ON i.FIO = d.FIO
	LEFT JOIN Table3 ev on ev.FIO = d.FIO and (EventID = 16 or EventID = 15)
GROUP BY d.FIO,i.ArestDate


Ну... что-то не кошерно это

SELECT
	d.FIO,
	i.ArestDate
	,event15 = ev15.EventDate 
	,event16 = ev16.EventDate 
FROM 
	Table1 d with (nolock)
	JOIN Table2 i with (nolock) ON i.FIO = d.FIO
	left join (select * from Table3 WHERE EventID = 15) ev15 on ev15.FIO = d.FIO 
	left join (select * from Table3 WHERE EventID = 16) ev16 on ev16.FIO = d.FIO 
Дык, это уже Guf предложил!
Правда, там CASEы лишние...
Что же, мне надо было то же самое написать? А так плюрализм получился.