DATETIME2FROMPARTS (Transact-SQL)

以指定的精確度傳回指定日期與時間的 datetime2 值。

主題連結圖示 Transact-SQL 語法慣例

適用於:SQL Server (SQL Server 2012 透過目前版本)、Windows Azure SQL 資料庫 (初始版本,透過目前版本)。

語法

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

引數

  • year
    指定年份的整數運算式。

  • month
    指定月份的整數運算式。

  • day
    指定日期的整數運算式。

  • hour
    指定小時的整數運算式。

  • minute
    指定分鐘的整數運算式。

  • seconds
    指定秒的整數運算式。

  • fractions
    指定分數的整數運算式。

  • precision
    指定要傳回之 datetime2 值的精確度的整數常值。

傳回類型

datetime2 ( precision )

備註

DATETIME2FROMPARTS 會傳回完整初始化的 datetime2 值。 如果引數無效,將會引發錯誤。 如果要求的引數為 null,即會傳回 null。 但如果 precision 引數為 Null,將會引發錯誤。

fractions 引數取決於 precision 引數。 例如,假設 precision 為 7,每個分數即表示 100 奈秒;如果 precision 為 3,每個分數即表示 1 毫秒。 如果 precision 的值為零,fractions 也必須為零,否則將引發錯誤。

函數可以在 SQL Server 2014 伺服器和更新版伺服器上以遠端方式進行。 它在版本低於 SQL Server 2014 的伺服器上無法以遠端方式運作。

範例

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 的值表示 5/10 秒。

  2. 如果 fractions 的值為 50、precision 的值為 2,則 fractions 的值表示 50/100 秒。

  3. 如果 fractions 的值為 500、precision 的值為 3,則 fractions 的值表示 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)