Condividi tramite


TIMEFROMPARTS (Transact-SQL)

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

Icona di collegamento a un argomento Convenzioni della 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

TIMEROMPARTS restituisce un valore relativo all'ora completamente inizializzato. Se gli argomenti non sono validi, viene generato un errore. Se un parametro è Null, viene restituito Null. Tuttavia, se 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 e versioni successive, ma non in server con versioni precedenti a SQL Server 2012.

Esempi

A.Esempio semplice senza frazioni di un secondo

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

Set di risultati:

Result
--------------------
23:59:59.0000000

(1 row(s) affected)

B.Esempio con frazioni di un secondo

Nell'esempio seguente viene illustrato l'utilizzo dei parametri fractions e precision:

  1. Se fractions presenta il valore 5 e precision presenta il valore 1, il valore di fractions rappresenta 5/10 di un secondo.

  2. Se fractions presenta il valore 50 e precision presenta il valore 2, il valore di fractions rappresenta 50/100 di un secondo.

  3. Se fractions presenta il valore 500 e precision presenta il valore 3, il valore di fractions rappresenta 500/1000 di un secondo.

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

Set di risultati:

----------------
14:23:44.5

(1 row(s) affected)


----------------
14:23:44.50

(1 row(s) affected)


----------------
14:23:44.500

(1 row(s) affected)