DATE_ADD(startdate, days) renvoie la date située days jours après startdate.
Limites
Cette fonction est uniquement prise en charge dans Realtime Compute for Apache Flink utilisant Ververica Runtime (VVR) 3.0.0 ou ultérieur.
Syntaxe
DATE DATE_ADD(VARCHAR startdate, INT days)
DATE DATE_ADD(TIMESTAMP time, INT days)
Paramètres
| Paramètre | Type de données | Description |
|---|---|---|
startdate |
VARCHAR | Chaîne de caractères représentant une date au format yyyy-MM-dd ou yyyy-MM-dd HH:mm:ss. |
time |
TIMESTAMP | Valeur d'horodatage. |
days |
INT | Nombre de jours à ajouter. |
Remarque
Si l'un des paramètres d'entrée est NULL ou si une erreur d'analyse survient, la fonction renvoie NULL.
Valeur de retour
DATE : la date située days jours après la date d'entrée.
Exemples
Les exemples suivants utilisent les données de test ci-dessous :
| datetime1 (VARCHAR) | nullstr (VARCHAR) |
|---|---|
| 2017-09-15 00:00:00 | NULL |
Instructions de test
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;
Résultats
| var1 (DATE) | var2 (DATE) | var3 (DATE) |
|---|---|---|
| 2017-10-15 | 2017-10-15 | NULL |
Points clés :
Les variables
var1etvar2retournent toutes deux2017-10-15, car l'ajout de 30 jours au 15 septembre donne le 15 octobre, quel que soit le type d'entrée (VARCHAR ou TIMESTAMP).La variable
var3est NULL, car le paramètre d'entréenullstrest NULL.