Znalazłem w dokumentacji SQL Servera 3 możliwości do wyświetlania aktualnego czasu serwera:
SYSDATETIME(), CURRENT_TIMESTAMP, GETDATE(). Czym się one różnią, szczególnie Getdate i Current_Timestamp? Która opcja jest najlepsza?
Znalazłem w dokumentacji SQL Servera 3 możliwości do wyświetlania aktualnego czasu serwera:
SYSDATETIME(), CURRENT_TIMESTAMP, GETDATE(). Czym się one różnią, szczególnie Getdate i Current_Timestamp? Która opcja jest najlepsza?
W przypadku SQL Server funkcja GETDATE() jest ekwiwalentem funkcji CURRENT_TIMESTAMP.
CURRENT_TIMESTAMP jest funkcją zgodną ze standardem ANSI SQL, natomiast GETDATE jest implementacją T-SQL tej samej funkcji. Obydwie funkcje zwracają identyczny czas komputera, na którym jest uruchomiona instancja bazy danych.
SELECT SYSDATETIME() ,SYSDATETIMEOFFSET() ,SYSUTCDATETIME() ,CURRENT_TIMESTAMP ,GETDATE() ,GETUTCDATE(); /* Returned: SYSDATETIME() 2007-04-30 13:10:02.0474381 SYSDATETIMEOFFSET()2007-04-30 13:10:02.0474381 -07:00 SYSUTCDATETIME() 2007-04-30 20:10:02.0474381 CURRENT_TIMESTAMP 2007-04-30 13:10:02.047 GETDATE() 2007-04-30 13:10:02.047 GETUTCDATE() 2007-04-30 20:10:02.047