mssql sqlserver DATETIMEOFFSETFROMPARTS 日期生成函数使用说明


摘要:
下文主要讲述 DATETIMEOFFSETFROMPARTS 系统函数的使用说明,
实验环境:
sqlserver 2012
如下所示:



DATETIMEOFFSETFROMPARTS 语法及功能简介

DATETIMEOFFSETFROMPARTS 功能说明:
通过指定参数值,返回一个datetimeoffset(precision)数据类型的日期值
—————————-
DATETIMEOFFSETFROMPARTS 语法说明:
DATETIMEOFFSETFROMPARTS (year, month, day, hour, minute, seconds, fractions, hour_offset, minute_offset, precision)
参数说明:
DATETIMEOFFSETFROMPARTS参数说明:
year:
指定返回数值的年份
month:
指定返回数值的月份
day:
指定返回数值的日期中的天数部分
hour:
指定返回数值的小时部分
minute:
指定返回数值的分钟部分
seconds:
指定返回数值的秒部分
fractions:
用于指定小数部分的整数表达式。
hour_offset:
用于指定小时部分的偏移量
minute_offset:
用于指定分钟部分的偏移量
precision:
整数文字,用于指定要返回的 datetimeoffset 值的精度
—————————-
DATETIMEOFFSETFROMPARTS 返回值说明:
返回值类型:datetimeoffset(precision)

注意事项:
DATETIMEOFFSETFROMPARTS 返回完全初始化的 datetimeoffset 数据类型。
偏移量参数用来表示时区偏移量。
如果忽略偏移量参数,则认为时区偏移量是 00:00,也即没有时区偏移量。 如果指定了偏移量参数,则必须存在这两个参数,且两者必须为正数或负数。
如果指定了 minute_offset,但没有 hour_offset,则会引发错误。 如果其他参数无效,则引发错误。
如果所需的参数为 null,则返回 null。
如果 precision 参数为 Null,则会引发错误。
fractions 参数取决于 precision 参数。
例:如果 precision 为 7,则每个分数表示 100 纳秒;
如果 precision 为 3,则每个分数表示 1 毫秒。 如果 precision 的值为零,
则 fractions 的值也必须为零;否则将引发错误。



DATETIMEOFFSETFROMPARTS 举例说明

   ---例1:
	SELECT DATETIMEOFFSETFROMPARTS(2018,05,28,16,28,31,1,02,30,7)
 AS [返回结果]; 
 ------返回结果-----
   2018-05-28 16:28:31.0000001 +02:30