SQL - Select's utéis - Somar uma quantidade de dias, meses ou anos em uma data


Volta a página anterior

Volta ao Menu Principal


Desenvolvido por DORNELLES, Carlos Alberto - Analista de Sistemas - Brasília DF. - cad_cobol@hotmail.com

SQL - O SELECT abaixo soma uma quantidade de dias em uma data informada
As datas informadas abaixo podem ser substituidas por uma variavel PIC X(008), PIC X(009) ou PIC X(010), de acordo com o tamanho da data que estás trabalhando, mas que contenha uma data válida, sendo que a variavel recepctora no INTO TEM QUE SER PIC X(010)

   SELECT DATE('2007-02-28') + 4 DAY AS SOMA_DIAS 
   FROM   SYSIBM.SYSDUMMY1                        
                                                                                
   SELECT DATE('20070228')   + 4 DAY AS SOMA_DIAS
   FROM   SYSIBM.SYSDUMMY1                      
                                     
   SELECT DATE('28.02.2007') + 4 DAY AS SOMA_DIAS
   FROM   SYSIBM.SYSDUMMY1                        
 
   SELECT DATE('28.2.2007')  + 4 DAY AS SOMA_DIAS 
   FROM   SYSIBM.SYSDUMMY1                        
                                     
   SELECT DATE('2007-2-28')  + 4 DAY AS SOMA_DIAS  
   FROM   SYSIBM.SYSDUMMY1                         

   Resultado da pesquisa acima:

   SOMA_DIAS      
   ---------- 
   04.03.2007 


SQL - O SELECT abaixo soma uma quantidade de meses em uma data informada
   SELECT ADD_MONTHS('2007-02-28', 4)                                             
   FROM   SYSIBM.SYSDUMMY1                                                          
                                                                                
   SELECT ADD_MONTHS('20070228', 4)      
   FROM   SYSIBM.SYSDUMMY1                
                                     
   SELECT ADD_MONTHS('28.02.2007', 4)   
   FROM   SYSIBM.SYSDUMMY1             
 
   SELECT ADD_MONTHS('28.2.2007', 4)    
   FROM   SYSIBM.SYSDUMMY1          
                                     
   SELECT ADD_MONTHS('2007-2-28', 4)
   FROM   SYSIBM.SYSDUMMY1   

   Resultado da pesquisa acima:

   COL1                                                                         
   ----------                                                                   
   30.06.2007   
                                                                
 
se usares esta outra maneira o resultado será diferente: SELECT DATE('2007-02-28') + 4 MONTH AS SOMA_MES FROM SYSIBM.SYSDUMMY1 SELECT DATE('20070228') + 4 MONTH AS SOMA_MES FROM SYSIBM.SYSDUMMY1 SELECT DATE('28.02.2007) + 4 MONTH AS SOMA_MES FROM SYSIBM.SYSDUMMY1 SELECT DATE('28.2.2007') + 4 MONTH AS SOMA_MES FROM SYSIBM.SYSDUMMY1 SELECT DATE('2007-2-28') + 4 MONTH AS SOMA_MES FROM SYSIBM.SYSDUMMY1 Resultado da pesquisa acima: SOMA_MES ---------- 28.06.2007


SQL - O SELECT abaixo soma uma quantidade de anos em uma data informada
   SELECT DATE('2007-2-28')  + 4 YEAR SOMA_ANOS 
   FROM   SYSIBM.SYSDUMMY1                     
                                                                                
   SELECT DATE('20070228')   + 4 YEAR SOMA_ANOS
   FROM   SYSIBM.SYSDUMMY1                      
                                     
   SELECT DATE('28.02.2007') + 4 YEAR SOMA_ANOS
   FROM   SYSIBM.SYSDUMMY1                        
 
   SELECT DATE('28.2.2007')  + 4 YEAR SOMA_ANOS 
   FROM   SYSIBM.SYSDUMMY1                        
                                     
   SELECT DATE('2007-2-28')  + 4 YEAR SOMA_ANOS  
   FROM   SYSIBM.SYSDUMMY1                         

   Resultado da pesquisa acima:

   SOMA_ANOS       
   ---------- 
   28.02.2011