Intervallumkifejezések

aug 31, 2021
admin

Egy intervallumkifejezés a INTERVAL YEAR TO MONTH vagy INTERVAL DAY TO SECOND értéket adja.

interval_expression::=

Description of interval_expression.gif follows

Description of the illustration interval_expression.gif

A expr1 és expr2 kifejezések lehetnek olyan kifejezések, amelyek DATE, TIMESTAMP, TIMESTAMP WITH TIME ZONE vagy TIMESTAMP WITH LOCAL TIME ZONE adattípusú értékekre értékelhetők.

Az adatok és az intervallumok a 2-5. táblázatban meghatározott szabályok szerint kombinálhatók. Az intervallumértékeket eredményező hat kombináció érvényes egy intervallumkifejezésben.

A leading_field_precision és a fractional_second_precision is lehet bármely egész szám 0 és 9 között. Ha kihagyja a leading_field_precision-t akár a DAY, akár a YEAR esetében, akkor az Oracle Database az alapértelmezett 2 értéket használja. Ha kihagyja a fractional_second_precision-t a másodiknál, akkor az adatbázis az alapértelmezett 6 értéket használja. Ha a lekérdezés által visszaadott érték több számjegyet tartalmaz, mint az alapértelmezett pontosság, akkor az Oracle Database hibát ad vissza. Ezért jó gyakorlat, ha olyan pontosságot adunk meg, amelyről tudjuk, hogy legalább akkora, mint a lekérdezés által visszaadott érték.

A következő utasítás például kivonja a orders mintatábla order_date oszlopának értékét (egy dátumérték) a rendszer időbélyegéből (egy másik dátumérték), hogy egy intervallumérték-kifejezést kapjunk. Nem ismert, hogy hány nappal ezelőtt adták le a legrégebbi rendelést, ezért a DAY rakodási mező pontosságának maximális értéke 9:

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

.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.