I Oracle Database, TZ_OFFSET()
funktion returnerar tidszonsförskjutningen som motsvarar argumentet baserat på datumet då satsen exekveras.
Syntax
Syntaxen ser ut så här:
TZ_OFFSET({ 'time_zone_name'
| '{ + | - } hh : mi'
| SESSIONTIMEZONE
| DBTIMEZONE
}
)
Exempel
Här är några exempel att visa.
Tidszonens regionsnamn
Du kan skicka ett giltigt tidszonsregionsnamn:
SELECT TZ_OFFSET('Australia/Darwin')
FROM DUAL;
Resultat:
+09:30
Så här får du en lista över tidszoner som stöds i ditt system.
Tidszonsförskjutning
Du kan skicka en tidszonförskjutning, i vilket fall den helt enkelt returnerar sig själv:
SELECT TZ_OFFSET('-10:00')
FROM DUAL;
Resultat:
-10:00
SESSIONTIMEZONE
Funktion
SESSIONTIMEZONE
funktion returnerar tidszonen för den aktuella sessionen. Du kan använda detta för att få tidszonförskjutningen för din nuvarande session.
Exempel:
SELECT
SESSIONTIMEZONE,
TZ_OFFSET(SESSIONTIMEZONE)
FROM DUAL;
Resultat i min session:
SESSIONTIMEZONE TZ_OFFSET(SESSIONTIMEZONE) _____________________ _____________________________ Australia/Brisbane +10:00
DBTIMEZONE
Funktion
DBTIMEZONE
funktion returnerar tidszonen för databasen. Detta kan vara detsamma som SESSIONTIMEZONE
på ditt system.
Exempel:
SELECT
DBTIMEZONE,
TZ_OFFSET(DBTIMEZONE)
FROM DUAL;
Resultat:
DBTIMEZONE TZ_OFFSET(DBTIMEZONE) _____________ ________________________ +00:00 +00:00
Nollargument
Skickar null
resulterar i null
:
SET NULL 'null';
SELECT TZ_OFFSET(null)
FROM DUAL;
Resultat:
null
Som standard returnerar SQLcl och SQL*Plus ett tomt utrymme när null
uppstår som ett resultat av en SQL SELECT
påstående.
Du kan dock använda SET NULL
för att ange en annan sträng som ska returneras. Här specificerade jag att strängen null
bör returneras.
Argument saknas
Att anropa funktionen med fel antal argument, eller utan att skicka några argument, resulterar i ett fel:
SELECT TZ_OFFSET()
FROM DUAL;
Resultat:
Error starting at line : 1 in command - SELECT TZ_OFFSET() FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action: