Date/Time Functions & Operators
45 min
Niveau 10
Nous avons discuté des types de données Date/Time dans le chapitre Types de données. Voyons maintenant les opérateurs et les fonctions Date/Time.
Le tableau suivant liste les comportements des opérateurs arithmétiques de base.
Opérateur | Exemple | Résultat |
---|---|---|
+ |
date '2022-09-28' + integer '7' | date '2022-10-05' |
+ |
date '2022-09-28' + intervalle '1 hour' | horodatage '2022-09-28 01:00:00' |
+ |
date '2022-09-28' + temps '03:00' | horodatage '2022-09-28 03:00:00' |
+ |
intervalle '1 day' + intervalle '1 hour' | intervalle '1 day 01:00:00' |
+ |
horodatage '2022-09-28 01:00' + intervalle '23 hours' | horodatage '2022-09-29 00:00:00' |
+ |
temps '01:00' + intervalle '3 hours' | temps '04:00:00' |
- |
- intervalle '23 hours' | intervalle '-23:00:00' |
- |
date '2022-10-01' - date '2022-09-28' | entier '3' (days) |
- |
date '2022-10-01' - entier '7' | date '2022-09-24' |
- |
date '2022-09-28' - intervalle '1 hour' | horodatage '2022-09-27 23:00:00' |
- |
temps '05:00' - temps '03:00' | intervalle '02:00:00' |
- |
temps '05:00' - intervalle '2 hours' | temps '03:00:00' |
- |
horodatage '2022-09-28 23:00' - intervalle '23 hours' | horodatage '2022-09-28 00:00:00' |
- |
intervalle '1 day' - intervalle '1 hour' | intervalle '1 day -01:00:00' |
- |
horodatage '2022-09-29 03:00' - horodatage '2022-09-27 12:00' | intervalle '1 day 15:00:00' |
* |
900 * intervalle '1 second' | intervalle '00:15:00' |
* |
21 * intervalle '1 day' | intervalle '21 days' |
* |
double precision '3.5' * interval '1 hour' | intervalle '03:30:00' |
* |
intervalle "1 heure" / double précision "1,5" | intervalle '00:40:00' |
Vous trouverez ci-dessous la liste de toutes les fonctions importantes liées à la date et à l'heure :
Function & Description
- AGE() - Soustraire les arguments.
- CURRENT DATE/TIME() - Date et heure actuelles.
- DATE_PART() - Obtenir une sous-zone (équivalent à extraire).
- EXTRACT() - Obtenir le sous-champ.
- ISFINITE() - Test pour la date, l'heure et l'intervalle finis (pas +/-infini).
- JUSTIFY - Ajuster l'intervalle.
AGE(timestamp, timestamp), AGE(timestamp)
Function & Description
AGE(timestamp, timestamp)
- Lorsqu'il est invoqué avec la forme TIMESTAMP du second argument, AGE() soustrait les arguments, produisant un résultat "symbolique" qui utilise les années et les mois et est de type INTERVAL.AGE(timestamp)
- Lorsqu'elle est invoquée avec le seul TIMESTAMP comme argument, AGE() soustrait de la date actuelle (à minuit).
Exemple de la fonction AGE(timestamp, timestamp)
:
testdb=# SELECT AGE(timestamp '2001-04-10', timestamp '1957-06-13');
L'instruction PostgreSQL ci-dessus produira le résultat suivant :
age
-------------------------
43 years 9 mons 27 days
Exemple de la fonction AGE(timestamp) :
testdb=# select age(timestamp '1957-06-13');
L'instruction PostgreSQL ci-dessus produira le résultat suivant :
age
--------------------------
55 years 10 mons 22 days
CURRENT DATE/TIME()
Besoin d'aide ?
Rejoignez notre communauté officielle et ne restez plus seul à bloquer sur un problème !