如何摆脱这些重复记录并从每个记录中仅选择最高日期?

时间:2011-01-10 21:41:13

标签: sql

我需要使用此查询返回最近的NoteDate记录,而不是返回显示每个记事日期的重复记录。我认为将'MAX'放在t.notedate前面可以摆脱重复的记录,但它们仍会出现。

SELECT    c.ContactId,  MAX(t.notedate),c.Source, c.FirstName, c.LastName,  c.Phone1, crCallResultCode, crTotalCallCount

FROM         dbo.t_Contact c inner join t_notes t on c.contactid=t.contactid

WHERE     

(c.Source IN ('Cabo10MC', 'BOWN10')) AND 
 (c.crCallResultCode NOT IN ('V02', 'S01', 'CNC', 'R99','U01', 'U02', 'U03')) AND 
 (DATEDIFF(ww, crNextCallDateTime, GETDATE()) = 0)OR (crNextCallDateTime = '1/1/1900')AND 
 (c.Phone1 NOT IN
                          (SELECT     phone
                            FROM          lema.dbo.tswlivetours
                            WHERE      TourDate > getdate() AND TourStatus IN ('showed')))

group by c.ContactId,  c.Source, c.FirstName, c.LastName,  c.Phone1, crCallResultCode, crTotalCallCount,t.notedate

1 个答案:

答案 0 :(得分:1)

从group by子句中删除t.notedate。

...group by c.ContactId,  c.Source, c.FirstName, c.LastName,  c.Phone1, crCallResultCode, crTotalCallCount