Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz 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
Analytics Platform System (PDW)
SQL Database w Microsoft Fabric
Zwraca wartość datetimeoffset dla określonych argumentów daty i godziny. Zwrócona wartość ma precyzję określoną przez argument precyzji oraz przesunięcie określone przez argumenty przesunięcia.
Transact-SQL konwencje składni
Składnia
DATETIMEOFFSETFROMPARTS ( year, month, day, hour, minute, seconds, fractions, hour_offset, minute_offset, precision )
Arguments
rok
Wyrażenie całkowite określające rok.
miesiąc
Wyrażenie całkowite określające miesiąc.
dzień
Wyrażenie całkowite określające dzień.
godzina
Wyrażenie całkowite określające liczbę godzin.
minuta
Wyrażenie całkowite określające minuty.
Sekund
Wyrażenie całkowite określające sekundy.
Frakcji
Wyrażenie całkowite określające wartość ułamkową sekund.
hour_offset
Wyrażenie całkowitoliczbowe, które określa godzinę przesunięcia strefy czasowej.
minute_offset
Wyrażenie całkowitoliczbowe, które określa minutową część przesunięcia strefy czasowej.
precision
Wartość literalna całkowita określająca precyzję wartości datetimeoffset , która DATETIMEOFFSETFROMPARTS zwraca się.
Typy zwracane
datetimeoffset(precyzja)
Uwagi
DATETIMEOFFSETFROMPARTS zwraca w pełni zainicjowany typ danych datetimeoffset . Argumenty przesunięcia reprezentują przesunięcie strefy czasowej. Dla argumentów pominięcia przesunięcia zakłada przesunięcie strefy czasowej – 00:00 innymi słowy, brak przesunięcia strefy DATETIMEOFFSETFROMPARTS czasowej. Dla określonych argumentów offsetu oczekuje DATETIMEOFFSETFROMPARTS się wartości dla obu argumentów, a oba wartości są dodatnie lub ujemne. Jeśli minute_offset ma wartość, a hour_offset nie ma wartości, DATETIMEOFFSETFROMPARTS pojawi się błąd.
DATETIMEOFFSETFROMPARTS wywoła błąd, jeśli pozostałe argumenty mają nieprawidłowe wartości. Jeśli przynajmniej jeden wymagany argument ma wartość NULL , to DATETIMEOFFSETFROMPARTS zwróci NULL. Jednak jeśli argument precyzji ma wartość NULL , DATETIMEOFFSETFROMPARTS to pojawi się błąd.
Argument ułamków zależy od argumentu precyzji. Na przykład, dla wartości precyzji 7, każda frakcja reprezentuje 100 nanosekund; dla precyzji 3 każda frakcja reprezentuje milisekundę. Dla wartości precyzji równej zero wartość ułamków musi również być równa zeru; w przeciwnym razie wywoła DATETIMEOFFSETFROMPARTS błąd.
Funkcja ta może być zdalnie przesyłana do serwerów SQL Server 2012 (11.x) i wyższych. Nie jest zdalnie przekazywany do serwerów mających wersję poniżej SQL Server 2012 (11.x).
Przykłady
A. Przykład bez ułamków sekundy
SELECT DATETIMEOFFSETFROMPARTS ( 2010, 12, 31, 14, 23, 23, 0, 12, 0, 7 ) AS Result;
Oto zestaw wyników.
Result
----------------------------------
2010-12-31 14:23:23.0000000 +12:00
(1 row(s) affected)
B. Przykład z ułamkami sekundy
Ten przykład pokazuje użycie ułamków i parametrów precyzji :
Gdy ułamki mają wartość 5, a precyzja wartość 1, wartość ułamków oznacza 5/10 sekundy.
Gdy ułamki mają wartość 50, a precyzja wartość 2, wartość ułamków oznacza 50/100 sekundy.
Gdy ułamki mają wartość 500, a precyzja wartość 3, to wartość ułamków oznacza 500/1000 sekundy.
SELECT DATETIMEOFFSETFROMPARTS ( 2011, 8, 15, 14, 30, 00, 5, 12, 30, 1 );
SELECT DATETIMEOFFSETFROMPARTS ( 2011, 8, 15, 14, 30, 00, 50, 12, 30, 2 );
SELECT DATETIMEOFFSETFROMPARTS ( 2011, 8, 15, 14, 30, 00, 500, 12, 30, 3 );
GO
Oto zestaw wyników.
----------------------------------
2011-08-15 14:30:00.5 +12:30
(1 row(s) affected)
----------------------------------
2011-08-15 14:30:00.50 +12:30
(1 row(s) affected)
----------------------------------
2011-08-15 14:30:00.500 +12:30
(1 row(s) affected)
Zobacz także
datetimeoffset (Transact-SQL)
W STREFIE CZASOWEJ (Transact-SQL)