Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Fonction TO_TIMESTAMP
TO_TIMESTAMP convertit une chaîne TIMESTAMP en TIMESTAMPTZ. Pour obtenir une liste des fonctions de date et d’heure supplémentaires pour Amazon Redshift, consultez Fonctions de date et d’heure.
Syntaxe
to_timestamp(timestamp, format)
to_timestamp (timestamp, format, is_strict)
Arguments
- timestamp
-
Chaîne qui représente une valeur d’horodatage au format spécifié par format. Si cet argument est laissé vide, la valeur de l’horodatage est fixée par défaut à
0001-01-01 00:00:00
. - format
-
Valeur de chaine littérale qui définit le format de la valeur timestamp. Formats qui incluent un fuseau horaire (
TZ
,tz
ouOF
) ne sont pas pris en charge comme entrée. Pour les formats d’horodatage valides, consultez Chaînes de format datetime. - is_strict
-
Valeur booléenne facultative qui spécifie si une erreur est renvoyée lorsqu’une valeur timestamp en entrée est hors de portée. Quand is_strict est défini sur TRUE, une erreur est renvoyée s’il y a une valeur hors de portée. Quand is_strict est défini sur FALSE, qui est la valeur par défaut, les valeurs en dépassement sont acceptées.
Type de retour
TIMESTAMPTZ
Exemples
L’exemple suivant montre l’utilisation de la fonction TO_TIMESTAMP pour convertir une chaîne TIMESTAMP en une chaîne TIMESTAMPTZ.
select sysdate, to_timestamp(sysdate, 'YYYY-MM-DD HH24:MI:SS') as second;
timestamp | second -------------------------- ---------------------- 2021-04-05 19:27:53.281812 | 2021-04-05 19:27:53+00
Il est possible de transmettre la partie TO_TIMESTAMP d’une date. Les autres parties de la date sont définies sur des valeurs par défaut. L’heure est incluse dans la sortie :
SELECT TO_TIMESTAMP('2017','YYYY');
to_timestamp -------------------------- 2017-01-01 00:00:00+00
L’instruction SQL suivante convertit la chaîne « 2011-12-18 24:38:15 » en TIMESTAMPTZ. Le résultat est une valeur TIMESTAMPTZ qui tombe le jour suivant, car le nombre d’heures est supérieur à 24 heures :
SELECT TO_TIMESTAMP('2011-12-18 24:38:15', 'YYYY-MM-DD HH24:MI:SS');
to_timestamp ---------------------- 2011-12-19 00:38:15+00
L’instruction SQL suivante convertit la chaîne « 2011-12-18 24:38:15 » en TIMESTAMPTZ. Le résultat est une erreur, car la valeur time dans l’horodatage est supérieure à 24 heures.
SELECT TO_TIMESTAMP('2011-12-18 24:38:15', 'YYYY-MM-DD HH24:MI:SS', TRUE);
ERROR: date/time field time value out of range: 24:38:15.0