DATE_ADD(startdate, days) devuelve la fecha (DATE) que corresponde a days días después de startdate.
Limitaciones
Esta función solo es compatible con Realtime Compute for Apache Flink que usa Ververica Runtime (VVR) 3.0.0 o versiones posteriores.
Sintaxis
DATE DATE_ADD(VARCHAR startdate, INT days)
DATE DATE_ADD(TIMESTAMP time, INT days)
Parámetros
|
Parámetro |
Tipo de dato |
Descripción |
|
|
VARCHAR |
Cadena de fecha con formato |
|
|
TIMESTAMP |
Valor de marca de tiempo. |
|
|
INT |
Número de días por agregar. |
Si algún parámetro de entrada es NULL o ocurre un error de análisis sintáctico, la función devuelve NULL.
Valor devuelto
DATE: la fecha que resulta de sumar days días a la fecha de entrada.
Ejemplos
A continuación se presentan ejemplos basados en estos datos de prueba:
|
datetime1 (VARCHAR) |
nullstr (VARCHAR) |
|
2017-09-15 00:00:00 |
NULL |
Sentencias de prueba
SELECT
DATE_ADD(datetime1, 30) AS var1, -- VARCHAR input: 2017-09-15 + 30 days
DATE_ADD(TIMESTAMP '2017-09-15 23:00:00', 30) AS var2, -- TIMESTAMP input: date portion + 30 days
DATE_ADD(nullstr, 30) AS var3 -- NULL input: returns NULL
FROM T1;
Resultados
|
var1 (DATE) |
var2 (DATE) |
var3 (DATE) |
|
2017-10-15 |
2017-10-15 |
NULL |
Observaciones clave:
Tanto
var1comovar2generan2017-10-15porque el 15 de septiembre más 30 días equivale al 15 de octubre, sin importar si la entrada es VARCHAR o TIMESTAMP.var3es NULL porque el valor de entradanullstres NULL.