Intervaluitdrukkingen
Een intervaluitdrukking levert een waarde op van INTERVAL
YEAR
TO
MONTH
of INTERVAL
DAY
TO
SECOND
.
interval_uitdrukking::=
Beschrijving van de illustratie interval_uitdrukking.gif
De uitdrukkingen expr1
en expr2
kunnen willekeurige uitdrukkingen zijn die evalueren naar waarden van het datatype DATE
, TIMESTAMP
, TIMESTAMP
WITH
TIME
ZONE
, of TIMESTAMP
WITH
LOCAL
TIME
ZONE
.
Datetijdstippen en intervallen kunnen worden gecombineerd volgens de regels die zijn gedefinieerd in Tabel 2-5. De zes combinaties die intervalwaarden opleveren zijn geldig in een intervaluitdrukking.
Zowel leading_field_precision
als fractional_second_precision
kan elk geheel getal van 0 tot 9 zijn. Als u leading_field_precision
weglaat voor DAY
of YEAR
, dan gebruikt Oracle Database de standaardwaarde 2. Als u fractional_second_precision
weglaat voor de tweede, dan gebruikt de database de standaardwaarde 6. Als de waarde die door een query wordt geretourneerd meer cijfers bevat dan de standaardprecisie, dan geeft Oracle Database een foutmelding. Daarom is het een goed gebruik om een precisie op te geven waarvan u weet dat deze minstens zo groot is als de waarde die door de query wordt geretourneerd.
Het volgende statement trekt bijvoorbeeld de waarde van de kolom order_date
in de voorbeeldtabel orders
(een datetime-waarde) af van de systeemtijdstempel (een andere datetime-waarde) om een intervalwaarde-expressie op te leveren. Het is niet bekend hoeveel dagen geleden de oudste bestelling is geplaatst, dus wordt de maximumwaarde van 9 voor de precisie van het ladingveld DAY
opgegeven:
SELECT (SYSTIMESTAMP - order_date) DAY(9) TO SECOND FROM orders WHERE order_id = 2458;