Das T-SQL TIMEFROMPARTS()
Mit der Funktion können Sie eine Zeit erstellen Wert aus den verschiedenen Zeitabschnitten. Sie können auch die Genauigkeit des Rückgabewerts angeben.
Nachfolgend finden Sie Beispiele dafür, wie diese Funktion funktioniert.
Syntax
Die Syntax lautet wie folgt:
TIMEFROMPARTS ( hour, minute, seconds, fractions, precision )
Wobei die ersten 4 Argumente ganzzahlige Ausdrücke sind, die diesen bestimmten Zeitabschnitt angeben. Das fünfte Argument ist ein ganzzahliges Literal, das die Genauigkeit der Zeit angibt zurückzugebender Wert.
Beispiel
Hier ist ein Beispiel zur Veranschaulichung.
SELECT TIMEFROMPARTS( 23, 35, 29, 1234567, 7 ) AS Result;
Ergebnis:
+------------------+ | Result | |------------------| | 23:35:29.1234567 | +------------------+
In diesem Fall habe ich einen Genauigkeitswert von 7 angegeben.
Genauer gesagt (kein Wortspiel beabsichtigt), gibt das Präzisionsargument tatsächlich die Skalierung an . Skalierung ist die Anzahl der Ziffern rechts vom Dezimalpunkt. Präzision ist die Gesamtzahl der Stellen.
Ungültige Argumente
Wenn eines der Argumente ungültig ist, tritt ein Fehler auf. Beispiel:
SELECT TIMEFROMPARTS( 23, 35, 61, 1234567, 7 ) AS Result;
Ergebnis:
Cannot construct data type time, some of the arguments have values which are not valid.
In diesem Fall habe ich eine Minute angegeben Argument von 61
.
Anzahl der Argumente
Ein Fehler tritt auch auf, wenn Sie nicht die richtige Anzahl von Argumenten angeben. Beispiel:
SELECT TIMEFROMPARTS( 23, 35, 29, 7 ) AS Result;
Ergebnis:
The timefromparts function requires 5 argument(s).
Nullwerte
Wenn eines der ersten 4 Argumente null ist, ist das Ergebnis NULL
:
SELECT TIMEFROMPARTS( 23, 35, NULL, 1234567, 7 ) AS Result;
Ergebnis:
+----------+ | Result | |----------| | NULL | +----------+
Wenn jedoch das fünfte Argument (Präzision ) null ist, tritt ein Fehler auf:
SELECT TIMEFROMPARTS( 23, 35, 29, 1234567, NULL ) AS Result;
Ergebnis:
Scale argument is not valid. Valid expressions for data type time scale argument are integer constants and integer constant expressions.
Remoting
Microsoft gibt an, dass die TIMEFROMPARTS()
Die Funktion kann auf Server mit SQL Server 2012 (11.x) und höher remote übertragen werden. Es kann nicht auf Server mit einer niedrigeren Version als SQL Server 2012 (11.x) übertragen werden.
Eine ähnliche Funktion
Sehen Sie sich auch die SMALLDATETIMEFROMPARTS()-Beispiele in SQL Server (T-SQL) an, um eine smalldatetime zu erhalten Wert anstelle einer Zeit Wert.