Arithmétique et comparaisons de dates et d'heures

Les valeurs DATE, TIME et TIMESTAMP peuvent être comparées à une autre valeur de même type. Les comparaisons sont chronologiques. Les valeurs de date et d'heure peuvent aussi être incrémentées, décrémentées et soustraites.

Si le stock de données est une base DB2, vous pouvez également utiliser la représentation de chaîne DB2 des types DATE, TIME et TIMESTAMP.

Tableau 1. Formats de date, heure et horodatage. Une représentation de date ou d'heure est au format ISO, USA, EUR ou JIS. Une représentation d'horodatage est au format ISO.
Format Format de date Exemples de date Format d'heure Exemples d'heure
ISO aaaa-mm-jj 1987-02-24 1987-2-24 hh.mm.ss 13.50.00 13.50
USA mm/jj/aaaa 2/24/1987 hh:mm AM ou PM 1:50 pm 02:10 AM
EUR jj.mm.aaaa 24.02.1987 24.2.1987 hh.mm.ss 13.50.00 13.55
JIS aaaa-mm-jj 1987-02-24 hh:mm:ss 13:50 13:50:05

Exemple 1 : Arithmétique et comparaisons de dates et d'heures

e.hiredate > '1990-02-24'
La valeur d'horodatage 24 février 1990 13:50 peut être représentée comme suit :
'1990-02-24-13.50.00.000000'
ou 
'1990-02-24-13.50.00'

Si le stock de données est une base DB2, vous pouvez utiliser des durées décimales DB2 dans les expressions et comparaisons. Une durée de date est un nombre décimal(8,0) qui représente la différence entre deux dates au format AAAAMMJJ. Une durée au format heure est un nombre décimal (6,0) qui représente la différence entre deux valeurs temporelles, telles que HHMMSS. Une durée d'horodatage est un nombre décimal (20,6) qui représente la différence entre deux valeurs d'horodatage au format AAAAMMJJHHMMSS.ZZZZZZ (où ZZZZZZ est le nombre de microsecondes après la virgule décimale).

Vous pouvez soustraire deux valeurs de date (ou d'heure ou d'horodatage) pour obtenir une durée. Si le second opérande est supérieur au premier, la durée est un nombre décimal négatif. Vous pouvez ajouter ou soustraire une durée d'une valeur de date et d'heure de façon à obtenir une nouvelle valeur de date et d'heure.

Exemple 2 : Arithmétique et comparaisons de dates et d'heures

DATE('3/15/2000') - '12/31/1999' a pour résultat le nombre décimal 215 qui correspond à une durée de 0 année, 2 mois et 15 jours.

Les durées sont des nombres décimaux réels utilisables dans des expressions arithmétiques et des comparaisons.

( DATE('3/15/2000') - '12/31/1999' ) + 14 > 215 se révèle vrai (TRUE).

DATE('12/31/1999') + DECIMAL(215,8,0) a pour résultat la date 3/15/2000.

TIME('11:02:26') - '00:32:56' a pour résultat le nombre décimal 102930 qui correspond à la durée 10 heures, 29 minutes et 30 secondes.

TIME('00:32:56') + DECIMAL(102930,6,0) a pour résultat l'heure 11:02:26.

TIME('00:00:59') + DECIMAL(240000,6,0) a pour résultat l'heure 00:00:59.

e.hiredate + DECIMAL(500,8,0) > '2000-10-01' compare la date d'embauche (hiredate) plus 5 mois à la date 10/01/2000.


Icône indiquant le type de rubrique Rubrique de concept



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cque_dtacomp
Nom du fichier : cque_dtacomp.html