次の方法で共有


DATETIME2FROMPARTS (Transact-SQL)

適用対象: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics 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)