Cálculo utilizando Max
Bom dia!
Eu precisava calcular alguns dados da seguinte forma :
>
Linha -- Data_Rec
123456 -- 01/02/2013
123456 -- 01/04/2013
123456 -- 01/05/2013
789000 -- 01/02/2013
789000 -- 01/04/2013
789000 -- 01/06/2013
010203 -- 12/12/2012
010203 -- 10/11/2012
Eu precisava trazer o último registro dos últimos 6 meses desde a data atual.
Nesse caso eu traria os registros abaixo utilizando o MAX.
>
123456 -- 01/05/2013
789000 -- 01/06/2013
789000 -- 12/12/2012
Porem se o registro constar dentro dos últimos 6 meses eu tenho que colocar um aviso de "NOK".
>
Select
Distinct linha,
case when
MAX(to_char(Data_Rec,'yyyymm')) < TO_CHAR(ADD_MONTHS(sysdate,-6),'yyyymm')
then 'NOK' else 'OK' end AS Elegiveis
From V_Pagamentos
where Linha IN
(
123456,
789000,
010203
)
Mas o resultado dessa query acima esta sendo assim :
>
Linha -- Data_Rec --- Elegiveis
123456 -- 01/02/2013 --- nao
123456 -- 01/04/2013 --- nao
123456 -- 01/05/2013 --- nao
789000 -- 01/02/2013 --- nao
789000 -- 01/04/2013 --- nao
789000 -- 01/06/2013 --- nao
010203 -- 12/12/2012 --- sim
010203 -- 10/11/2012 --- sim
Sendo que eu preciso que traga esse resultado:
>
Linha -- Data_Rec --- Elegiveis
123456 -- 01/05/2013 --- nao
789000 -- 01/06/2013 --- nao
010203 -- 10/11/2012 --- sim
Desde já agradeço a atenção e ajuda de todos...
Discussão (2)
Carregando comentários...