DATETIME2FROMPARTS (Transact-SQL)

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

Esta función devuelve un valor datetime2 para los argumentos de fecha y hora especificados. El valor devuelto tiene una precisión especificada por el argumento de precisión.

Convenciones de sintaxis de Transact-SQL

Sintaxis

DATETIME2FROMPARTS ( year, month, day, 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

year
Expresión entera que especifica un año.

month
Expresión entera que especifica un mes.

day
Expresión entera que especifica un día.

hour
Expresión entera que especifica las horas.

minute
Expresión entera que especifica los minutos.

segundos
Expresión entera que especifica los segundos.

fractions
Expresión entera que especifica un valor de fracciones de segundo.

precisión
Expresión entera que especifica la precisión del valor datetime2 que DATETIME2FROMPARTS va a devolver.

Tipos de valores devueltos

datetime2(precision)

Comentarios

DATETIME2FROMPARTS devuelve un valor datetime2 totalmente inicializado. DATETIME2FROMPARTS producirá un error si al menos uno de los argumentos obligatorios tiene un valor no válido. DATETIME2FROMPARTS devuelve NULL si al menos uno de los argumentos obligatorios tiene un valor NULL. Pero si el argumento precision tiene un valor NULL, DATETIME2FROMPARTS producirá un error.

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

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

Ejemplos

A. Ejemplo sin fracciones de segundo

SELECT DATETIME2FROMPARTS ( 2010, 12, 31, 23, 59, 59, 0, 0 ) AS Result;  

El conjunto de resultados es el siguiente:

Result  
---------------------------  
2010-12-31 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 tiene el valor 3, el valor de fractions representa 500/1000 de un segundo.

SELECT DATETIME2FROMPARTS ( 2011, 8, 15, 14, 23, 44, 5, 1 );  
SELECT DATETIME2FROMPARTS ( 2011, 8, 15, 14, 23, 44, 50, 2 );  
SELECT DATETIME2FROMPARTS ( 2011, 8, 15, 14, 23, 44, 500, 3 );  
GO  

El conjunto de resultados es el siguiente:

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

Vea también

datetime2 (Transact-SQL)