TIMEFROMPARTS (Transact-SQL)

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Devuelve un valor time para la hora especificada y con la precisión indicada.

Convenciones de sintaxis de Transact-SQL

Sintaxis

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

Nota:

Para ver la sintaxis de Transact-SQL para SQL Server 2014 (12.x) y versiones anteriores, consulte Versiones anteriores de la documentación.

Argumentos

hour
Expresión entera que especifica horas.

minute
Expresión entera que especifica minutos.

segundos
Expresión entera que especifica segundos.

fractions
Expresión entera que especifica fracciones.

precisión
Literal entero que especifica la precisión del valor time que se va a devolver.

Tipos de valor devuelto

time(precision)

Comentarios

TIMEROMPARTS devuelve un valor de hora totalmente inicializado. Si los argumentos no son válidos, se generará un error. Si alguno de los parámetros es NULL, se devuelve NULL. Pero si el argumento precision es NULL, se generará un error.

El argumento fractions depende del argumento precision. Por ejemplo, si precision es 7, cada fracción representa 100 nanosegundos; si precision es 3, cada fracción representa un milisegundo. Si el valor de precision es cero, el valor de fractions también debe ser cero; de lo contrario, se generará un error.

Esta función se puede enviar de forma remota a servidores SQL Server 2012 (11.x) y posteriores. No se puede enviar de forma remota a servidores que tengan una versión anterior a SQL Server 2012 (11.x).

Ejemplos

A. Ejemplo simple sin fracciones de segundo

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

El conjunto de resultados es el siguiente:

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

B. Ejemplo con fracciones de segundo

En este ejemplo se muestra el uso de los parámetros fractions y precision:

  1. Cuando fractions tiene el valor 5 y precision, el valor 1, el valor de fractions representa 5/10 de un segundo.

  2. Cuando fractions tiene el valor 50 y precision, el valor 2, el valor de fractions representa 50/100 de un segundo.

  3. Cuando fractions tiene el valor 500 y precision, el valor 3, el valor de fractions representa 500/1000 de un segundo.

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

El conjunto de resultados es el siguiente:

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