sql >> Databáze >  >> RDS >> Oracle

Funkce SESSIONTIMEZONE v Oracle

V databázi Oracle je to SESSIONTIMEZONE funkce vrací časové pásmo aktuální relace.

Syntaxe

Syntaxe vypadá takto:

SESSIONTIMEZONE

Nejsou tedy vyžadovány žádné argumenty (nebo přijímány) a nejsou zde žádné závorky.

Příklad

Zde je příklad:

SELECT SESSIONTIMEZONE
FROM DUAL;

Výsledek:

Australia/Brisbane

Návratový typ je posun časového pásma (typ znaku ve formátu '[+|-]TZH:TZM' ) nebo název oblasti časového pásma v závislosti na tom, jak byla zadána hodnota časového pásma databáze v poslední ALTER SESSION prohlášení.

Volání SESSIONTIMEZONE se závorkami

Jak již bylo zmíněno, SESSIONTIMEZONE funkce se volá bez závorek.

Když to nazveme v závorkách, stane se toto:

SELECT SESSIONTIMEZONE()
FROM DUAL;

Výsledek:

Error starting at line : 1 in command -
SELECT SESSIONTIMEZONE()
FROM DUAL
Error at Command Line : 1 Column : 23
Error report -
SQL Error: ORA-00923: FROM keyword not found where expected
00923. 00000 -  "FROM keyword not found where expected"
*Cause:    
*Action:

Získejte časové pásmo databáze

Časové pásmo aktuální relace může nebo nemusí mít stejnou hodnotu jako časové pásmo databáze. To závisí na vaší konfiguraci a obě lze měnit nezávisle na sobě.

Můžete použít DBTIMEZONE funkce pro získání časového pásma databáze.


  1. Oprava „CHYBA 1136 (21S01):Počet sloupců neodpovídá počtu hodnot na řádku 1“ při vkládání dat do MySQL

  2. Jak seřadit podle počtu v SQL?

  3. Jak funguje SET ROWCOUNT v SQL Server

  4. Jak převést řetězec na datum/čas na serveru SQL pomocí PARSE()