sql >> Database >  >> RDS >> Oracle

SYSTIMESTAMP-functie in Oracle

In Oracle Database, de SYSTIMESTAMP functie retourneert de systeemdatum, inclusief fracties van seconden en tijdzone, van het systeem waarop de database zich bevindt.

De geretourneerde waarde is van het type TIMESTAMP WITH TIME ZONE .

Syntaxis

De syntaxis gaat als volgt:

SYSTIMESTAMP

Er zijn dus geen argumenten vereist (of geaccepteerd) en er zijn geen haakjes.

Voorbeeld

Hier is een voorbeeld:

SELECT SYSTIMESTAMP
FROM DUAL;

Resultaat:

06/AUG/21 07:45:00.540362000 PM -04:00

In dit voorbeeld wordt de datum weergegeven op basis van de waarde van de NLS_DATE_FORMAT van mijn systeem parameter (die momenteel DD/MON/RR is) ). We kunnen de NLS_DATE_FORMAT . wijzigen parameter, of gebruik een functie zoals TO_CHAR() om het resultaat in een ander formaat te retourneren.

Voorbeeld:

SELECT TO_CHAR(SYSTIMESTAMP, 'YYYY-MM-DD HH24:MI:SS TZR')
FROM DUAL;

Resultaat:

2021-08-06 19:48:43 -04:00

Bellen SYSTIMESTAMP met haakjes

Zoals gezegd, de SYSTIMESTAMP functie wordt aangeroepen zonder haakjes.

Dit is wat er gebeurt als we het tussen haakjes noemen:

SELECT SYSTIMESTAMP()
FROM DUAL;

Resultaat:

Error starting at line : 1 in command -
SELECT SYSTIMESTAMP()
FROM DUAL
Error at Command Line : 1 Column : 21
Error report -
SQL Error: ORA-30088: datetime/interval precision is out of range
30088. 00000 -  "datetime/interval precision is out of range"
*Cause:    The specified datetime/interval precision was not between 0 and 9.
*Action:   Use a value between 0 and 9 for datetime/interval precision.

  1. Eenvoudige parametrering en triviale plannen - deel 1

  2. Hoe kan ik meerdere SQL-tabellen samenvoegen met behulp van de ID's?

  3. Reader-oplossingen voor de uitdaging van Special Islands

  4. Nieuwe gebruikers per dag krijgen in MySQL