Fonction DATE_TRUNC - Amazon Redshift

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 DATE_TRUNC

La fonction DATE_TRUNC tronque une expression d’horodatage ou littérale en fonction de la partie de date que vous spécifiez, telle que l’heure, le jour ou le mois.

Syntaxe

DATE_TRUNC('datepart', timestamp)

Arguments

datepart

Partie de la date à laquelle tronquer la valeur d’horodatage. L’entrée timestamp est tronquée à la précision de l’entrée datepart. Par exemple, month tronque jusqu’au premier jour du mois. Les formats valides sont les suivants :

  • microseconde, microsecondes

  • milliseconde, millisecondes

  • seconde, secondes

  • minute, minutes

  • heure, heures

  • jour, jours

  • semaine, semaines

  • mois

  • trimestre, trimestres

  • année, années

  • décennie, décennies

  • siècle, siècles

  • millénaire, millénaires

Pour plus d’informations sur les abréviations de certains formats, consultez Parties de date pour les fonctions de date ou d’horodatage.

timestamp

Colonne timestamp ou expression qui convertit implicitement en un horodatage.

Type de retour

TIMESTAMP

Exemples

Tronquer l’horodatage en entrée à la seconde.

SELECT DATE_TRUNC('second', TIMESTAMP '20200430 04:05:06.789'); date_trunc 2020-04-30 04:05:06

Tronquer l’horodatage en entrée à la minute.

SELECT DATE_TRUNC('minute', TIMESTAMP '20200430 04:05:06.789'); date_trunc 2020-04-30 04:05:00

Tronquer l’horodatage en entrée à l’heure.

SELECT DATE_TRUNC('hour', TIMESTAMP '20200430 04:05:06.789'); date_trunc 2020-04-30 04:00:00

Tronquer l’horodatage en entrée au jour.

SELECT DATE_TRUNC('day', TIMESTAMP '20200430 04:05:06.789'); date_trunc 2020-04-30 00:00:00

Tronquer l’horodatage en entrée au premier jour du mois.

SELECT DATE_TRUNC('month', TIMESTAMP '20200430 04:05:06.789'); date_trunc 2020-04-01 00:00:00

Tronquer l’horodatage en entrée au premier jour d’un trimestre.

SELECT DATE_TRUNC('quarter', TIMESTAMP '20200430 04:05:06.789'); date_trunc 2020-04-01 00:00:00

Tronquer l’horodatage en entrée au premier jour de l’année.

SELECT DATE_TRUNC('year', TIMESTAMP '20200430 04:05:06.789'); date_trunc 2020-01-01 00:00:00

Tronquer l’horodatage en entrée au premier jour d’un siècle.

SELECT DATE_TRUNC('millennium', TIMESTAMP '20200430 04:05:06.789'); date_trunc 2001-01-01 00:00:00

Tronquez l’horodatage en entrée au lundi d’une semaine.

select date_trunc('week', TIMESTAMP '20220430 04:05:06.789'); date_trunc 2022-04-25 00:00:00

Dans l’exemple suivant, la fonction DATE_TRUNC utilise la partie de date ’week’ pour renvoyer la date du lundi de chaque semaine.

select date_trunc('week', saletime), sum(pricepaid) from sales where saletime like '2008-09%' group by date_trunc('week', saletime) order by 1; date_trunc | sum ------------+------------- 2008-09-01 | 2474899 2008-09-08 | 2412354 2008-09-15 | 2364707 2008-09-22 | 2359351 2008-09-29 | 705249