TIMEFROMPARTS (Transact-SQL)

Retourne une valeur time pour l'heure spécifiée et avec la précision spécifiée.

Icône Lien de rubrique Conventions de la syntaxe Transact-SQL

Syntaxe

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

Arguments

  • hour
    Expression entière spécifiant des heures.

  • minute
    Expression entière spécifiant des minutes.

  • seconds
    Expression entière spécifiant des secondes.

  • fractions
    Expression entière spécifiant des fractions.

  • precision
    Littéral entier spécifiant la précision de la valeur time à retourner.

Type des valeurs retournées

time ( precision )

Notes

TIME retourne une valeur temporelle complètement initialisée. Si les arguments ne sont pas valides, une erreur est générée. Si l'un des paramètres est NULL, la valeur NULL est retournée. Toutefois, si l'argument precision est NULL, une erreur est générée.

L'argument fractions dépend de l'argument precision. Par exemple, si precision est 7, chaque fraction représente 100 nanosecondes ; si precision est 3, chaque fraction représente une milliseconde. Si la valeur de precision est zéro, la valeur de fractions doit également être zéro ; sinon, une erreur est générée.

Cette fonction peut être exécutée à distance sur des serveurs SQL Server 2012 et versions ultérieures. Elle ne peut pas être exécutée à distance sur des serveurs dont la version est antérieure à SQL Server 2012.

Exemples

A.Exemple simple sans fractions de seconde

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

Voici l'ensemble des résultats.

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

(1 row(s) affected)

B.Exemple avec fractions de seconde

L'exemple suivant illustre l'utilisation des paramètres fractions et precision :

  1. Lorsque fractions a la valeur 5 et precision la valeur 1, la valeur de fractions représente 5/10 de seconde.

  2. Lorsque fractions a la valeur 50 et precision la valeur 2, la valeur de fractions représente 50/100 de seconde.

  3. Lorsque fractions a la valeur 500 et precision la valeur 3, la valeur de fractions représente 500/1000 de seconde.

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

Voici l'ensemble des résultats.

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

(1 row(s) affected)


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

(1 row(s) affected)


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

(1 row(s) affected)