DATETIME2FROMPARTS (Transact-SQL)

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

この関数は、指定された日付引数と時刻引数に対して datetime2 値を返します。 返された値には、有効桁数引数で有効桁数が指定されます。

Transact-SQL 構文表記規則

構文

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

Note

SQL Server 2014 (12.x) 以前のバージョンの Transact-SQL 構文を確認するには、以前のバージョンのドキュメントを参照してください。

引数

year
年を指定する整数式。

month
月を指定する整数式。

day
日を指定する整数式。

hour
時間を指定する整数式。

minute
分を指定する整数式。

seconds
秒を指定する整数式。

fractions
秒の小数部を指定する整数式。

有効桁数 (precision)
DATETIME2FROMPARTS が返す datetime2 値の有効桁数を指定する整数式。

戻り値の型

datetime2(precision)

注釈

DATETIME2FROMPARTS は、完全に初期化された datetime2 値を返します。 DATETIME2FROMPARTS は、必須引数に 1 つでも無効な値が含まれている場合、エラーを生成します。 DATETIME2FROMPARTS は、必須引数に 1 つでも NULL 値が含まれている場合、NULL を返します。 ただし、precision 引数に NULL 値が含まれる場合、DATETIME2FROMPARTS はエラーを生成します。

分数 引数によって異なります、 有効桁数 引数。 たとえば、precision の値が 7 の場合、小数部分はそれぞれ 100 ナノ秒を表します。precision の値が 3 の場合、小数部分はそれぞれ 1 ミリ秒を表します。 precision 値がゼロの場合、fractions の値もゼロでなければなりません。それ以外の場合、DATETIME2FROMPARTS はエラーを生成します。

この関数は、リモート処理は実行することのできる SQL Server 2012 (11.x) サーバー上とします。 SQL Server 2012 (11.x) 下のバージョンのサーバーには、リモート処理されません。

A. 秒の小数部を使用しない場合の例

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

結果セットは次のようになります。

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

B. 秒の小数部を使用する場合の例

この例は、fractions パラメーターと precision パラメーターの使用方法を示しています。

  1. fractions の値が 5 のとき、precision の値が 1 であれば、fractions の値は 1 秒の 5/10 になります。

  2. fractions の値が 50 のとき、precision の値が 2 であれば、fractions の値は 1 秒の 50/100 になります。

  3. fractions の値が 500 で、precision の値が 3 の場合、fractions の値は 1 秒の 500/1000 を表します。

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  

結果セットは次のようになります。

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

関連項目

datetime2 (Transact-SQL)