TIMEFROMPARTS (Transact-SQL)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Gibt einen time-Wert für die angegebene Uhrzeit mit der angegebenen Genauigkeit zurück.
Transact-SQL-Syntaxkonventionen
Syntax
TIMEFROMPARTS ( hour, minute, seconds, fractions, precision )
Argumente
hour
Ganzzahliger Ausdruck, der die Stunden angibt.
minute
Ganzzahliger Ausdruck, der die Minuten angibt.
Sekunden
Ganzzahliger Ausdruck, der die Sekunden angibt.
fractions
Ganzzahliger Ausdruck, der die Sekundenbruchteile angibt.
precision
Ganzzahliges Literal, das die Genauigkeit des zurückzugebenden time-Werts angibt.
Rückgabetypen
time( Genauigkeit )
Hinweise
TIMEROMPARTS gibt einen vollständig initialisierten Uhrzeitwert zurück. Wenn die Argumente ungültig sind, wird ein Fehler ausgegeben. Wenn einer der Parameter einen NULL-Wert aufweist, wird NULL zurückgegeben. Wenn jedoch das precision-Argument NULL ist, wird ein Fehler ausgelöst.
Das fractions-Argument ist vom precision-Argument abhängig. Wenn beispielsweise precision den Wert 7 hat, stellt jeder Bruchteil 100 Nanosekunden dar. Ist precision jedoch 3, stellt jeder Bruchteil eine Millisekunde dar. Wenn der Wert von precision 0 (null) ist, muss auch der Wert von fractions 0 (null) sein; andernfalls wird ein Fehler ausgelöst.
Diese Funktion kann remote auf Servern mit SQL Server 2012 (11.x) oder einer höheren Version ausgeführt werden. Sie kann nicht remote auf Servern mit einer Version vor SQL Server 2012 (11.x) ausgeführt werden.
Beispiele
A. Einfaches Beispiel ohne Sekundenbruchteile
SELECT TIMEFROMPARTS ( 23, 59, 59, 0, 0 ) AS Result;
Hier sehen Sie das Ergebnis.
Result
--------------------
23:59:59.0000000
(1 row(s) affected)
B. Beispiel mit Sekundenbruchteilen
Das folgende Beispiel zeigt die Verwendung der Parameter fractions und precision:
Wenn fractions den Wert 5 und precision den Wert 1 hat, stellt der Wert von fractions 5/10 einer Sekunde dar.
Wenn fractions den Wert 50 und precision den Wert 2 hat, stellt der Wert von fractions 50/100 einer Sekunde dar.
Wenn fractions den Wert 500 und precision den Wert 3 hat, stellt der Wert von fractions 500/1000 einer Sekunde dar.
SELECT TIMEFROMPARTS ( 14, 23, 44, 5, 1 );
SELECT TIMEFROMPARTS ( 14, 23, 44, 50, 2 );
SELECT TIMEFROMPARTS ( 14, 23, 44, 500, 3 );
GO
Hier sehen Sie das Ergebnis.
----------------
14:23:44.5
(1 row(s) affected)
----------------
14:23:44.50
(1 row(s) affected)
----------------
14:23:44.500
(1 row(s) affected)