Expresii de interval

aug. 31, 2021
admin

O expresie de interval produce o valoare de INTERVAL YEAR TO MONTH sau INTERVAL DAY TO SECOND.

expresie_interval::=

Descrierea expresiei interval_expresie.gif urmează

Descrierea ilustrației expresie_interval.gif

Expresiile expr1 și expr2 pot fi orice expresii care se evaluează la valori de tip de date DATE, TIMESTAMP, TIMESTAMP WITH TIME ZONE sau TIMESTAMP WITH LOCAL TIME ZONE.

Datele și intervalele pot fi combinate în conformitate cu regulile definite în tabelul 2-5. Cele șase combinații care produc valori de interval sunt valabile într-o expresie de interval.

Atât leading_field_precision cât și fractional_second_precision pot fi orice număr întreg de la 0 la 9. Dacă omiteți leading_field_precision pentru DAY sau YEAR, atunci Oracle Database utilizează valoarea implicită de 2. Dacă omiteți fractional_second_precision pentru al doilea, atunci baza de date utilizează valoarea implicită de 6. Dacă valoarea returnată de o interogare conține mai multe cifre decât precizia implicită, atunci Oracle Database returnează o eroare. Prin urmare, este o bună practică să specificați o precizie despre care știți că va fi cel puțin la fel de mare ca orice valoare returnată de interogare.

De exemplu, următoarea instrucțiune scade valoarea coloanei order_date din tabelul de eșantionare orders (o valoare dată-timp) din marcajul de timp al sistemului (o altă valoare dată-timp) pentru a obține o expresie de valoare de interval. Nu se știe cu câte zile în urmă a fost plasată cea mai veche comandă, așa că se specifică valoarea maximă de 9 pentru precizia câmpului lading DAY:

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

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.