DATETIME2FROMPARTS (Transact-SQL)
適用於: SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW)
此函式會傳回指定日期和時間引數的 datetime2 值。 傳回值具有 precision 引數所指定的精確度。
語法
DATETIME2FROMPARTS ( year, month, day, hour, minute, seconds, fractions, precision )
引數
year
指定年份的整數運算式。
month
指定月份的整數運算式。
day
指定日期的整數運算式。
hour
指定小時的整數運算式。
minute
指定分鐘的整數運算式。
seconds
指定秒的整數運算式。
fractions
指定小數秒值的整數運算式。
有效位數
整數運算式,指定 DATETIME2FROMPARTS
會傳回之 datetime2 值的精確度。
傳回類型
datetime2( precision )
備註
DATETIME2FROMPARTS
會傳回完整初始化的 datetime2 值。 如果至少一個必要引數具有無效的值,DATETIME2FROMPARTS
會引發錯誤。 如果至少一個必要引數具有 Null 值,則 DATETIME2FROMPARTS
會傳回 Null。 不過,如果 precision 引數為 Null 值,DATETIME2FROMPARTS
會引發錯誤。
fractions 引數相依於 precision 引數。 例如,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 參數的用法:
若 fractions 的值為 5、precision 的值為 1,則 fractions 的值表示 5/10 秒。
若 fractions 的值為 50、precision 的值為 2,則 fractions 的值表示 50/100 秒。
若 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)