Partager via


TIMEFROMPARTS (Transact-SQL)

S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

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

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.

secondes
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 à renvoyer.

Types de retour

time( precision )

Notes

TIMEROMPARTS 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 a pour valeur 7, chaque fraction représente 100 nanosecondes ; si precision a pour valeur 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 les serveurs SQL Server 2012 (11.x) et versions ultérieures. Elle ne peut pas être exécutée à distance sur des serveurs avec une version antérieure à SQL Server 2012 (11.x).

Exemples

R. Exemple simple sans fractions de seconde

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

Voici le jeu de 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 le jeu de 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)