sql >> Database teknologi >  >> RDS >> Oracle

SYSTIMESTAMP Funktion i Oracle

I Oracle Database er SYSTIMESTAMP funktion returnerer systemdatoen, inklusive brøkdele sekunder og tidszone, for det system, som databasen ligger på.

Den returnerede værdi er af typen TIMESTAMP WITH TIME ZONE .

Syntaks

Syntaksen ser sådan ud:

SYSTIMESTAMP

Så ingen argumenter er påkrævet (eller accepteret), og der er ingen parenteser.

Eksempel

Her er et eksempel:

SELECT SYSTIMESTAMP
FROM DUAL;

Resultat:

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

Dette eksempel viser datoen baseret på værdien af ​​mit systems NLS_DATE_FORMAT parameter (som i øjeblikket er DD/MON/RR ). Vi kan ændre NLS_DATE_FORMAT parameter, eller brug en funktion som TO_CHAR() for at returnere resultatet i et andet format.

Eksempel:

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

Resultat:

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

Ringer til SYSTIMESTAMP med parenteser

Som nævnt er SYSTIMESTAMP funktion kaldes uden parentes.

Her er, hvad der sker, når vi kalder det med parentes:

SELECT SYSTIMESTAMP()
FROM DUAL;

Resultat:

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. Sådan giver du fjernadgang til en enkelt MySQL-database

  2. OPDATERING hvis der findes andet INDSÆT i SQL Server 2008

  3. 10 nyttige Microsoft Access-genveje, når du arbejder med kontrolelementer på formularer og rapporter

  4. Oracle SQL-forespørgsel:Hent seneste værdier pr. gruppe baseret på tid