SELECT * FROM (SELECT ap.nr_matricula, p.nm_pessoa, a.cd_curso, Nvl(scl.F_MOSTRA_ITEM_LISTA('AC','SITUACAO PERIODO',ap.st_final_periodo),'Sem matrícula') AS situacao, Row_Number() over (partition BY ap.nr_matricula ORDER BY nr_ano desc, nr_periodo desc) AS linha, ap.nr_ano||'/'|| nr_periodo AS ultimo_periodo FROM ac2.ac_st_aluno_periodo ap inner join ac2.ac_alunos a ON a.cd_instituicao = ap.cd_instituicao AND a.nr_matricula = ap.nr_matricula inner join ac2.ac_pessoas p ON p.cd_pessoa = a.cd_pessoa inner join ac2.ac_cursos c ON c.cd_instituicao = a.cd_instituicao AND c.cd_curso = a.cd_curso WHERE a.cd_instituicao = 2 AND a.cd_curso in ('608') --AND a.nr_matricula > 1310000000 AND a.nr_matricula < 1420000000 --AND a.cd_curso in ('290', '207', '402', '608', '125', '111','609','112') --AND a.dt_matricula between '11/Ago/2011' and '12/Ago/2011' -- MUDAR PARA TODOS --AND a.nr_matricula like '1410005%' -- IN (1220071056,1220071200,1220071030,1220071080,1220063061,1220067130, -- 1220070670,1220069132,1220068993,1220064114) ) WHERE --situacao = 'Apto' ultimo_periodo in ('2015/2', '2015/1', '2014/2', '2014/1','2013/2','2013/1') AND linha = 1 --linha = 1 ORDER BY nm_pessoa, ultimo_periodo, situacao