Sql 需要某些类型的最新事件,其中该日期可能存在多个事件
首先,我在SQL Server 2000中工作(尽管已经向联邦刺激计划的财神祈祷升级到2008年) 我有一份学生和教育活动的清单。我可以成功获取最近的事件,但它可能是多个事件的组合:Sql 需要某些类型的最新事件,其中该日期可能存在多个事件,sql,sql-server,tsql,sql-server-2000,Sql,Sql Server,Tsql,Sql Server 2000,首先,我在SQL Server 2000中工作(尽管已经向联邦刺激计划的财神祈祷升级到2008年) 我有一份学生和教育活动的清单。我可以成功获取最近的事件,但它可能是多个事件的组合: StudentID Event Date 1 Triennial 7/1/2009 1 Annual 7/1/2009 2 Annual 3/3/2009 3 Annual
StudentID Event Date
1 Triennial 7/1/2009
1 Annual 7/1/2009
2 Annual 3/3/2009
3 Annual 6/23/2009
3 Triennial 6/23/2009
4 Annual 2/1/2009
4 Triennial 2/1/2009
5 Annual 10/1/2009
一个活动日期可能有两个活动,“年度”和“三年一次”,也可能只有一个活动“年度”。如果是组合活动,我只想选择“三年一次”。如果只是年度活动,我只选择“年度”
基本上,每个活动都有“年度”,但有些活动也有“三年一次”,如果是三年一次,我需要选择该活动而不是“年度”。因此,对于上述数据,我希望得到如下结果:
StudentID Event Date
1 Triennial 7/1/2009
2 Annual 3/3/2009
3 Triennial 6/23/2009
4 Triennial 2/1/2009
5 Annual 10/1/2009
应该这样做……(三年一次比一年一次大)
SELECT StudentID, [Date], MAX(Event) AS [Event]
FROM MyTable
GROUP BY StudentID, [Date]