2012-04-19 31 views
8

¿Cómo puedo calcular una fecha después de un mes de la fecha actual.Cómo calcular una fecha después de 1 mes currentDate

Ejemplo si tengo 19/04/2012 Quiero conseguir el 19/05/2012. ¿Hay alguna función en sql que permita hacer esto?

tengo que hacer lo mismo para un año también como 19/04/2012 y establecer 19/04/2013

Saludos

Respuesta

14

Puede utilizar DATEADD (datepart, número, fecha)

como se especifica here

Ejemplos (gracias a DarrenDavis)

para el mes:

select dateadd(m, 1, getdate()) 

del año:

select dateadd(YY, 1, getdate()) 
+0

Muchas gracias !! – CPM

+0

es posible tener una cita con una hora specif, como 1 mes después del tiempo, pero tiene que ser de 4 pm, así que habrá 2012-04-19 16:00:00 – CPM

+0

puede probar esta ... http: // stackoverflow.com/questions/4952207/set-time-portion-of-a-datetime-variable – Mithir

1

Utilice la función dateadd()

SELECT dateadd(mm, 1, '19-Apr-2012') 
0

Puede utilizar DateAdd:

select dateadd(m, 1, getdate()) 
select dateadd(yy, 1, getdate()) 

búsqueda en línea de otros indicadores antiguos, como las horas, minuto, etc.

+1

esto no funcionaría: SELECT DATEADD (Y, 1, GETDATE()) - Es necesario que haya YY –

+0

fijo, gracias! –

0

Se puede utilizar esta consulta durante 1 mes antes la fecha. Esta consulta funciona bien en Oracle.

select add_months(trunc(sysdate),1) from dual; 

Por 1 año antes utilización fecha de esta consulta

select add_months(trunc(sysdate),12) from dual; 
+0

Esta pregunta está dirigida a SQL Server (como etiquetado): no hay SQL Server add_months función y no dual table. –

+0

No vi eso :) – hitman047

Cuestiones relacionadas