Intervallausdrücke

Aug 31, 2021
admin

Ein Intervallausdruck ergibt einen Wert von INTERVAL YEAR TO MONTH oder INTERVAL DAY TO SECOND.

Intervallausdruck::=

Beschreibung von intervall_ausdruck.gif folgt

Beschreibung der Abbildung intervall_ausdruck.gif

Die Ausdrücke expr1 und expr2 können beliebige Ausdrücke sein, die zu Werten des Datentyps DATE, TIMESTAMP, TIMESTAMP WITH TIME ZONE oder TIMESTAMP WITH LOCAL TIME ZONE führen.

Daten und Intervalle können nach den in Tabelle 2-5 definierten Regeln kombiniert werden. Die sechs Kombinationen, die Intervallwerte ergeben, sind in einem Intervallausdruck gültig.

Beide leading_field_precision und fractional_second_precision können eine beliebige ganze Zahl von 0 bis 9 sein. Wenn Sie leading_field_precision entweder für DAY oder YEAR weglassen, verwendet Oracle Database den Standardwert 2. Wenn Sie fractional_second_precision für den zweiten Wert weglassen, verwendet die Datenbank den Standardwert 6. Wenn der von einer Abfrage zurückgegebene Wert mehr Ziffern als die Standardgenauigkeit enthält, gibt Oracle Database einen Fehler zurück. Daher empfiehlt es sich, eine Genauigkeit anzugeben, von der Sie wissen, dass sie mindestens so groß ist wie der von der Abfrage zurückgegebene Wert.

Die folgende Anweisung subtrahiert beispielsweise den Wert der Spalte order_date in der Beispieltabelle orders (einen Datumswert) vom Systemzeitstempel (einem anderen Datumswert), um einen Intervallwertausdruck zu erhalten. Da nicht bekannt ist, vor wie vielen Tagen die älteste Bestellung aufgegeben wurde, wird der Höchstwert von 9 für die Genauigkeit des Feldes DAY angegeben:

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

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.