下面的代码显示有多个候选人的学生,但不是他们当前的。学生不能在同一年,期限和部门不止一个候选人,所以这是针对他们,这样我可以批量删除它们。查询帮助 - 匹配阶段并返回最近的一个
我需要的代码,将只针对最高阶段添加。如果阶段相匹配,它会采取一个与最近的日期(hist_stage_dte)。我需要帮助。不胜感激。谢谢!
SELECT *
FROM candidacy
WHERE (candidacy.yr_cde = '2017') AND
(candidacy.trm_cde = '20') AND
(candidacy.div_cde like 'g%') and
(candidacy.CUR_CANDIDACY = 'n') and
(candidacy.ID_NUM in (SELECT candidacy.id_num
FROM candidacy
WHERE (candidacy.yr_cde = '2017') AND
(candidacy.trm_cde = '20') AND
(candidacy.div_cde like 'g%')
GROUP BY candidacy.id_num
HAVING count(candidacy.id_num) > 1))
? MySQL的/ Postres/MSSQL/....?你需要它有一个以上的记录同样ID_NUM删除一切,只留下最近的一次? –