RANK() OVER (ORDER BY StudentID DESC) AS xh 为创建序号列
SELECT RANK() OVER (ORDER BY StudentID DESC) AS xh,nf,major,StudentID,StudentName,Class,Department FROM vw_Vis_Students
取重复专业的第一条记录,也就是说专业开始年份
select distinct *
from vw_Vis_Students t
where not exists (select 1 from vw_Vis_Students where major = t.major and xh > t.xh)
ORDER BY nf
结果如下:
最近发现个最简单的MIN(NF)就直接出来了