Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Endpoint analityki SQL w Microsoft Fabric
Magazyn w Microsoft Fabric
Baza danych SQL w Microsoft Fabric
Funkcja SYSDATETIME Transact-SQL (T-SQL) zwraca wartość datetime2(7), która zawiera datę i godzinę komputera, na którym działa instancja SQL Server.
Uwaga / Notatka
SYSDATETIME i SYSUTCDATETIME mają większą precyzję ułamkową sekund niż GETDATE i GETUTCDATE.
SYSDATETIMEOFFSET zawiera przesunięcie strefy czasowej systemu.
SYSDATETIME, SYSUTCDATETIME, i SYSDATETIMEOFFSET mogą być przypisane do zmiennej dowolnego typu daty i czasu.
Azure Synapse Analytics podąża za UTC. Użyj AT TIME ZONE w Azure Synapse Analytics, jeśli musisz interpretować informacje o dacie i czasie w strefie czasowej spoza UTC.
Uwaga / Notatka
Azure SQL Database oraz baza danych SQL w Microsoft Fabric wspierają zmianę domyślnej strefy czasowej z uniwersalnego czasu koordynowanego (UTC). Jeśli zmodyfikujesz strefę czasową na poziomie bazy danych lub sesji , ta funkcja zwraca czas lokalny na podstawie skonfigurowanej wartości strefy czasowej. Więcej informacji można znaleźć pod adresem ALTER DATABASE SCOPED CONFIGURATIONSET TIME ZONE.
Zobacz Typy danych i funkcje daty i godziny, aby zapoznać się z omówieniem wszystkich Transact-SQL typów i funkcji danych daty i godziny.
Transact-SQL konwencje składni
Składnia
SYSDATETIME ( )
Typy zwracane
datetime2(7)
Uwagi
Transact-SQL stwierdzenia mogą odnosić się do SYSDATETIME dowolnego miejsca, w którym mogą odnosić się do wyrażenia datetime2(7).
SYSDATETIME jest funkcją nieokreśloną. Nie możesz indeksować widoków i wyrażeń odwołujących się do tej funkcji w kolumnie.
Uwaga / Notatka
SQL Server pobiera wartości daty i godziny, korzystając z API GetSystemTimeAsFileTime() Windows. Dokładność zależy od sprzętu komputera i wersji systemu Windows, na którym działa wystąpienie programu SQL Server. Precyzja tego interfejsu API jest stała na poziomie 100 nanosekund. Możesz użyć GetSystemTimeAdjustment() Windows API, aby określić dokładność.
Przykłady
W poniższych przykładach użyto sześciu funkcji systemowych programu SQL Server, które zwracają bieżącą datę i godzinę, aby zwrócić datę, godzinę lub obie te funkcje. Wartości są zwracane w serii; w związku z tym ich ułamkowe sekundy mogą być inne.
W tych przykładach załóżmy, że aktualna data to 30 kwietnia 2026 roku.
A. Pobieranie bieżącej daty i godziny systemu
SELECT SYSDATETIME(),
SYSDATETIMEOFFSET(),
SYSUTCDATETIME(),
CURRENT_TIMESTAMP,
GETDATE(),
GETUTCDATE(),
CURRENT_DATE;
Oto zestaw wyników.
SYSDATETIME() 2026-09-01 16:15:37.7418724
SYSDATETIMEOFFSET() 2026-09-01 16:15:37.7418724 -06:00
SYSUTCDATETIME() 2026-09-01 22:15:37.7418724
CURRENT_TIMESTAMP 2026-09-01 16:15:37.740
GETDATE() 2026-09-01 16:15:37.740
GETUTCDATE() 2026-09-01 22:15:37.740
CURRENT_DATE 2026-09-01
B. Pobieranie bieżącej daty systemu
W poniższym przykładzie pokazano, jak przekonwertować wartości daty i godziny na typ danych daty .
SELECT CONVERT (DATE, SYSDATETIME()),
CONVERT (DATE, SYSDATETIMEOFFSET()),
CONVERT (DATE, SYSUTCDATETIME()),
CONVERT (DATE, CURRENT_TIMESTAMP),
CONVERT (DATE, GETDATE()),
CONVERT (DATE, GETUTCDATE()),
CURRENT_DATE;
Oto zestaw wyników.
SYSDATETIME() 2026-09-01
SYSDATETIMEOFFSET() 2026-09-01
SYSUTCDATETIME() 2026-09-01
CURRENT_TIMESTAMP 2026-09-01
GETDATE() 2026-09-01
GETUTCDATE() 2026-09-01
CURRENT_DATE 2026-09-01
C. Pobierz aktualny czas systemowy
SELECT CONVERT (TIME, SYSDATETIME()),
CONVERT (TIME, SYSDATETIMEOFFSET()),
CONVERT (TIME, SYSUTCDATETIME()),
CONVERT (TIME, CURRENT_TIMESTAMP),
CONVERT (TIME, GETDATE()),
CONVERT (TIME, GETUTCDATE());
Oto zestaw wyników.
SYSDATETIME() 16:15:37.7418724
SYSDATETIMEOFFSET() 16:15:37.7418724
SYSUTCDATETIME() 22:15:37.7418724
CURRENT_TIMESTAMP 16:15:37.740
GETDATE() 16:15:37.740
GETUTCDATE() 22:15:37.740
Przykłady: Azure Synapse Analytics
D. Pobieranie bieżącej daty i godziny systemu
SELECT SYSDATETIME();
Oto zestaw wyników.
--------------------------
4/30/2026 1:10:02 PM