TIMEFROMPARTS (Transact-SQL)

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di AzureAzure Synapse AnalyticsEndpoint di analisi SQL in Microsoft FabricMagazzino in Microsoft FabricDatabase SQL in Microsoft Fabric

Restituisce un valore time per l'ora specificata e con la precisione indicata.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

TIMEFROMPARTS ( hour, minute, seconds, fractions, precision )  

Argomenti

hour
Espressione intera che specifica le ore.

minute
Espressione intera che specifica i minuti.

seconds
Espressione intera che specifica i secondi.

fractions
Espressione intera che specifica le frazioni.

precision
Valore letterale intero che specifica la precisione del valore time da restituire.

Tipi restituiti

time(precision)

Osservazioni:

TIMEFROMPARTS restituisce un valore di ora completamente inizializzato. Se gli argomenti non sono validi, viene generato un errore. Se un parametro è Null, viene restituito Null. Se tuttavia l'argomento precision è Null viene generato un errore.

L'argomento fractions dipende dall'argomento precision. Se ad esempio precision è 7, ogni frazione rappresenta 100 nanosecondi, mentre se precision è 3 ogni frazione rappresenta un millisecondo. Se il valore di precision è zero, anche il valore di fractions deve essere zero. In caso contrario, viene generato un errore.

Questa funzione può essere eseguita in modalità remota in server SQL Server 2012 (11.x) e versioni successive, ma non in server con versioni precedenti a SQL Server 2012 (11.x).

Esempi

R. Esempio semplice senza frazioni di un secondo

SELECT TIMEFROMPARTS ( 23, 59, 59, 0, 0 ) AS Result;  

Il set di risultati è il seguente.

Result  
--------------------  
23:59:59.0000000  
  
(1 row(s) affected)  

B. Esempio con frazioni di un secondo

L'esempio seguente illustra l'uso dei parametri fractions e precision:

  1. Se fractions ha valore 5 e precision ha valore 1, il valore di fractions corrisponde a 5/10 di secondo.

  2. Se fractions ha valore 50 e precision ha valore 2, il valore di fractions corrisponde a 50/100 di secondo.

  3. Se fractions ha valore 500 e precision ha valore 3, il valore di fractions corrisponde a 500/1000 di secondo.

SELECT TIMEFROMPARTS ( 14, 23, 44, 5, 1 );  
SELECT TIMEFROMPARTS ( 14, 23, 44, 50, 2 );  
SELECT TIMEFROMPARTS ( 14, 23, 44, 500, 3 );  
GO  

Il set di risultati è il seguente.

----------------  
14:23:44.5  
  
(1 row(s) affected)  
  
----------------  
14:23:44.50  
  
(1 row(s) affected)  
  
----------------  
14:23:44.500  
  
(1 row(s) affected)