Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Funkcja SYSDATE w Oracle

W bazie danych Oracle SYSDATE funkcja zwraca bieżącą datę i godzinę ustawioną dla systemu operacyjnego, na którym znajduje się serwer bazy danych.

Zwrócona wartość jest typu DATE .

Składnia

Składnia wygląda tak:

SYSDATE

Tak więc żadne argumenty nie są wymagane (ani akceptowane) i nie ma nawiasów.

Przykład

Oto przykład:

SELECT SYSDATE
FROM DUAL;

Wynik:

06/AUG/21

Ten przykład wyświetla datę na podstawie wartości NLS_DATE_FORMAT mojego systemu parametr (którym obecnie jest DD/MON/RR ). Możemy zmienić ten parametr lub użyć funkcji takiej jak TO_CHAR() aby zwrócić wynik w innym formacie.

Przykład:

SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD')
FROM DUAL;

Wynik:

2021-08-06

Dzwonię na SYSDATE z nawiasami

Jak wspomniano, SYSDATE funkcja jest wywoływana bez nawiasów.

Oto, co się dzieje, gdy nazywamy to w nawiasach:

SELECT SYSDATE()
FROM DUAL;

Wynik:

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

Naprawianie SYSDATE Wartość zwrotu

FIXED_DATE parametr inicjalizacji umożliwia ustawienie stałej daty i godziny, w której SYSDATE zawsze zwróci zamiast bieżącej daty i godziny.

Może to pomóc w testowaniu sytuacji, gdy potrzebujesz tych samych danych wejściowych, aby spójnie uzyskać ten sam wynik.

Zobacz dokumentację Oracle dla FIXED_DATE a także ogólnie parametry inicjalizacji, aby uzyskać więcej informacji.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Indeksy Oracle i rodzaje indeksów w Oracle z przykładem

  2. Java:odczytywanie obiektów Blob z Oracle

  3. Dlaczego Oracle 9i traktuje pusty ciąg jako NULL?

  4. Jaka jest główna różnica między Varchar2 a char

  5. Jak eksportować dane za pomocą Oracle SQL Developer?