SELECT CASE WHEN 
           (SELECT MONTHS_BETWEEN(CAST(MIN( FECCARGA) AS DATE FORMAT 'YYYYMM'), CAST(PERIODO_PARAMETRO AS DATE FORMAT 'YYYYMM')) FROM E_DW_VIEWS.V_CONSOLIDADO_SUNAT_HIST WHERE FECCARGA>=PERIODO_PARAMETRO) 
           >=
          (SELECT MONTHS_BETWEEN(CAST(PERIODO_PARAMETRO AS DATE FORMAT &#039;YYYYMM&#039;), CAST(MAX( FECCARGA) AS DATE FORMAT &#039;YYYYMM&#039;)) FROM E_DW_VIEWS.V_CONSOLIDADO_SUNAT_HIST WHERE FECCARGA<=PERIODO_PARAMETRO) 
          OR  (SELECT MIN( FECCARGA) FROM E_DW_VIEWS.V_CONSOLIDADO_SUNAT_HIST WHERE FECCARGA>=PERIODO_PARAMETRO)  IS NULL
          THEN 
          (SELECT MAX( FECCARGA) FROM E_DW_VIEWS.V_CONSOLIDADO_SUNAT_HIST WHERE FECCARGA<=PERIODO_PARAMETRO)
          ELSE
           (SELECT MIN( FECCARGA) FROM E_DW_VIEWS.V_CONSOLIDADO_SUNAT_HIST WHERE FECCARGA>=PERIODO_PARAMETRO)                                     
END

Add a code snippet to your website: www.paste.org