DATETIME2FROMPARTS (Transact-SQL)

Si applica a:SQL Server database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics AnalyticsPlatform System (PDW)

Questa funzione restituisce un valore di tipo datetime2 per gli argomenti date e time. Il valore restituito ha una precisione specificata dall'argomento precision.

Convenzioni di sintassi Transact-SQL

Sintassi

DATETIME2FROMPARTS ( year, month, day, hour, minute, seconds, fractions, precision )  

Nota

Per visualizzare la sintassi Transact-SQL per SQL Server 2014 (12.x) e versioni precedenti, vedere la documentazione delle versioni precedenti.

Argomenti

year
Espressione Integer che specifica un anno.

month
Espressione Integer che specifica un mese.

day
Espressione Integer che specifica un giorno.

hour
Espressione Integer che specifica le ore.

minute
Espressione Integer che specifica i minuti.

seconds
Espressione Integer che specifica i secondi.

fractions
Espressione Integer che specifica un valore per i secondi frazionari.

precision
Espressione Integer che specifica la precisione del valore datetime2 che verrà restituito da DATETIME2FROMPARTS.

Tipi restituiti

datetime2(precision)

Osservazioni:

DATETIME2FROMPARTS restituisce un valore di tipo datetime2 completamente inizializzato. DATETIME2FROMPARTS genererà un errore se almeno un argomento obbligatorio ha un valore non valido. DATETIME2FROMPARTS restituisce null se almeno un argomento obbligatorio ha un valore null. Se tuttavia l'argomento precision ha un valore null, DATETIME2FROMPARTS genererà un errore.

L'argomento fractions dipende dall'argomento precision. Ad esempio, per un valore di precision pari a 7, ogni frazione rappresenta 100 nanosecondi, mentre per precision pari a 3, ogni frazione rappresenta un millisecondo. Per un valore di precision pari a zero, anche il valore di fractions deve essere zero. In caso contrario, DATETIME2FROMPARTS genererà un errore.

Questa funzione può essere eseguita in modalità remota in server con SQL Server 2012 (11.x) e versioni successive, ma non in server con versioni precedenti a SQL Server 2012 (11.x).

Esempi

R. Esempio senza frazioni di un secondo

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

Questo è il set di risultati.

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

B. Esempio con frazioni di un secondo

Questo esempio illustra l'uso dei parametri fractions e precision:

  1. Se fractions ha valore 5 e precision ha valore 1, il valore di fractions corrisponde a 5/10 di secondo.

  2. Se fractions ha valore 50 e precision ha valore 2, il valore di fractions corrisponde a 50/100 di secondo.

  3. Se fractions ha valore 500 e precision ha valore 3, il valore di fractions corrisponde a 500/1000 di secondo.

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  

Questo è il set di risultati.

----------------------  
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)  

Vedi anche

datetime2 (Transact-SQL)