Expressions d’intervalle

Août 31, 2021
admin

Une expression d’intervalle donne une valeur de INTERVAL YEAR TO MONTH ou INTERVAL DAY TO SECOND.

expression_intervalle::=

Description de l'expression_intervalle.gif suit

Description de l’illustration expression_intervalle.gif

Les expressions expr1 et expr2 peuvent être toutes les expressions qui s’évaluent à des valeurs de type données DATE, TIMESTAMP, TIMESTAMP WITH TIME ZONE, ou TIMESTAMP WITH LOCAL TIME ZONE.

Les dates et les intervalles peuvent être combinés selon les règles définies dans le tableau 2-5. Les six combinaisons qui donnent des valeurs d’intervalle sont valides dans une expression d’intervalle.

Les deux leading_field_precision et fractional_second_precision peuvent être n’importe quel nombre entier de 0 à 9. Si vous omettez le leading_field_precision pour DAY ou YEAR, alors la base de données Oracle utilise la valeur par défaut de 2. Si vous omettez le fractional_second_precision pour le second, alors la base de données utilise la valeur par défaut de 6. Si la valeur renvoyée par une requête contient plus de chiffres que la précision par défaut, alors la base de données Oracle renvoie une erreur. Par conséquent, il est bon de spécifier une précision dont vous savez qu’elle sera au moins aussi grande que toute valeur retournée par la requête.

Par exemple, l’instruction suivante soustrait la valeur de la colonne order_date de la table échantillon orders (une valeur de temps de date) de l’horodatage du système (une autre valeur de temps de date) pour donner une expression de valeur d’intervalle. On ne sait pas depuis combien de jours la commande la plus ancienne a été passée, c’est pourquoi on spécifie la valeur maximale de 9 pour la précision du champ de chargement DAY:

SELECT (SYSTIMESTAMP - order_date) DAY(9) TO SECOND FROM orders WHERE order_id = 2458;

.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.