Intervalluttryck
Ett intervalluttryck ger värdet INTERVAL
YEAR
TO
MONTH
eller INTERVAL
DAY
TO
SECOND
.
intervalluttryck::=
Beskrivning av illustrationen interval_expression.gif
Uttrycken expr1
och expr2
kan vara alla uttryck som utvärderas till värden av datatypen DATE
, TIMESTAMP
, TIMESTAMP
WITH
TIME
ZONE
eller TIMESTAMP
WITH
LOCAL
TIME
ZONE
.
Datatider och intervaller kan kombineras enligt de regler som definieras i tabell 2-5. De sex kombinationer som ger intervallvärden är giltiga i ett intervalluttryck.
Både leading_field_precision
och fractional_second_precision
kan vara ett heltal från 0 till 9. Om du utelämnar leading_field_precision
för antingen DAY
eller YEAR
använder Oracle Database standardvärdet 2. Om du utelämnar fractional_second_precision
för andra använder databasen standardvärdet 6. Om det värde som returneras av en fråga innehåller fler siffror än standardprecisionen returnerar Oracle Database ett fel. Därför är det bra att ange en precision som du vet kommer att vara minst lika stor som det värde som returneras av frågan.
För att ge ett intervallvärdesuttryck subtraherar till exempel följande anvisning värdet av kolumnen order_date
i provtabellen orders
(ett datumtidsvärde) från systemets tidsstämpel (ett annat datumtidsvärde). Det är inte känt hur många dagar sedan den äldsta beställningen gjordes, så det maximala värdet 9 för precisionen i fältet DAY
anges:
SELECT (SYSTIMESTAMP - order_date) DAY(9) TO SECOND FROM orders WHERE order_id = 2458;