当前位置:网站首页 > 编程语言 > 正文

dateutils 工具类(dbutils工具类)



适用于: sql Server 2022 (16.x) Azure SQL 数据库 Azure SQL 托管实例 Microsoft Fabric Warehouse 中的 Microsoft Fabric Warehouse 中的 SQL 分析终结点

函数返回截断到指定日期部分的输入日期。

 
  

datepart

指定截断的精度。 下表列出 的所有有效 datepart 值,因为它也是输入日期类型的有效部分。

datepart 缩写形式 截断说明 , , , , 截断的方式与 , 截断的方式与 , 截断到一周的 第一天。 在 T-SQL 中,一周的第一天由 T-SQL 设置定义。 对于美国英语环境, 默认为 (星期日)。 , 截断到 ISO 周的第一天。 ISO8601 日历系统中一周的第一天是星期一。 ,

date

接受任何表达式、列或用户定义的变量,它们可以解析为任何有效的 T-SQL 日期或时间类型。 有效类型包括:

  • smalldatetime
  • datetime
  • date
  • time
  • datetime2
  • datetimeoffset

不要将 date 参数与 date 数据类型混淆。

还接受可解析为 datetime2(7)的字符串文本(任何字符串类型)。

的返回数据类型是动态的。 返回日期类型与输入日期相同的截断日期(如果适用,还会返回小数位时间刻度相同的截断日期)。 例如,如果向 提供了 datetimeoffset(3) 输入日期,它将返回 datetimeoffset(3)。 如果提供的字符串字面量可以解析为 datetime2(7),则 将返回 datetime2(7)。

毫秒的小数位时间刻度为 3 (),微秒的小数位时间刻度为 6 (),纳米秒的小数位时间刻度为 9 ()。 time、datetime2 和 datetimeoffset 数据类型允许的最大小数位时间刻度为 7 ()。 因此,若要截断到日期部分,小数时间刻度必须至少为 3。 同样,若要截断到日期部分,小数时间刻度必须至少为 6。 不支持 datepart因为 T-SQL 日期类型不支持 9 的小数级时间刻度。

以下示例演示了各种 datepart 选项的使用:

 
  

结果集如下。

 
  

以下示例演示如何 将设置与 datepart 配合使用:

 
  

结果集如下。

 
  

以下示例演示了 date 参数文本的用法:

 
  

结果集如下。 所有结果均为 datetime2(7)类型

 
  

下面的示例说明了 date 参数的用法:

 
  

结果集如下。

 
  

表中的 列用作 date 参数的示例 column 自变量:

 
  

date 参数接受可以解析为 T-SQL 日期类型的任何表达式,或者可以解析为 datetime2(7) 的任何字符串字面量。 表中的 列充当一个假自变量,用于演示如何在表达式中使用 date 参数:

 
  

如果 datepart 的单位最大精度与输入日期类型相同,则将输入日期截断到此 datepart 将不起作用。

示例 1

 
  

结果集如下。 输入 日期/时间 和截断 日期 参数相同。

 
  

示例 2

 
  

结果集如下。 输入 日期/时间 和截断 日期 参数相同。

 
  

示例 3:smalldatetime 精度

smalldatetime 仅精确到最接近的分钟,即使它有一个秒钟字段。 因此,将其截断到最接近的分钟或最接近的秒将不起作用。

 
  

结果集如下。 输入 smalldatetime 值与截断值相同:

 
  

示例 4:datetime 精度

datetime 仅精确到 3.33 毫秒。 因此,将日期时间断为毫秒可能会产生与用户预期不同的结果。 但是,此截断值与内部存储的 datetime 值相同。

 
  

结果集如下。 截断 日期 与存储 日期相同。 这可能与基于 语句的预期不同。

 
  

如果 日期 截断尝试回溯到该数据类型支持的最小日期之前的日期,则会引发错误。 此错误仅在使用 datepart 时发生。 使用 datepart 时无法发生,因为所有 T-SQL 日期类型都巧合地使用星期一作为其最小日期。 下面是一个包含相应结果错误消息的示例:

 
  
 
  

如果函数或输入日期数据类型不支持使用的 datepart,则会引发错误。 在以下情况下可能会发生此错误:

  1. 使用了不受 支持的 datepart(即 、 或 )
  2. 与 time 相关的 datepart 配合 date 数据类型使用或者与 date 相关的 datepart 配合 time 数据类型使用。 下面是一个包含相应结果错误消息的示例:
     
     
  3. 日期 部分 需要比数据类型支持的更小数部分时间刻度精度。 有关详细信息,请参阅 分数时间刻度精度。 下面是一个包含相应结果错误消息的示例:
     
     
  • @@DATEFIRST (Transact-SQL)
  • DATEPART (Transact-SQL)
  • 日期和时间数据类型及函数 (Transact-SQL)

适用于: sql Server 2022 (16.x) Azure SQL 数据库 Azure SQL 托管实例 Microsoft Fabric Warehouse 中的 Microsoft Fabric Warehouse 中的 SQL 分析终结点

函数返回截断到指定日期部分的输入日期。

 
  

datepart

指定截断的精度。 下表列出 的所有有效 datepart 值,因为它也是输入日期类型的有效部分。

datepart 缩写形式 截断说明 , , , , 截断的方式与 , 截断的方式与 , 截断到一周的第一天。 在 T-SQL 中,一周的第一天由 T-SQL 设置定义。 对于美国英语环境, 默认为 (星期日)。 , 截断到 ISO 周的第一天。 ISO8601 日历系统中一周的第一天是星期一。 ,

date

接受任何表达式、列或用户定义的变量,它们可以解析为任何有效的 T-SQL 日期或时间类型。 有效类型包括:

  • smalldatetime
  • datetime
  • date
  • time
  • datetime2
  • datetimeoffset

不要将 date 参数与 date 数据类型混淆。

还接受可解析为 datetime2(7)的字符串文本(任何字符串类型)。

的返回数据类型是动态的。 返回日期类型与输入日期相同的截断日期(如果适用,还会返回小数位时间刻度相同的截断日期)。 例如,如果向 提供了 datetimeoffset(3) 输入日期,它将返回 datetimeoffset(3)。 如果提供的字符串字面量可以解析为 datetime2(7),则 将返回 datetime2(7)。

毫秒的小数位时间刻度为 3 (),微秒的小数位时间刻度为 6 (),纳米秒的小数位时间刻度为 9 ()。 time、datetime2 和 datetimeoffset 数据类型允许的最大小数位时间刻度为 7 ()。 因此,若要截断到日期部分,小数时间刻度必须至少为 3。 同样,若要截断到日期部分,小数时间刻度必须至少为 6。 不支持 datepart因为 T-SQL 日期类型不支持 9 的小数级时间刻度。

以下示例演示了各种 datepart 选项的使用:

 
  

结果集如下。

 
  

以下示例演示如何 将设置与 datepart 配合使用:

 
  

结果集如下。

 
  

以下示例演示了 date 参数文本的用法:

 
  

结果集如下。 所有结果均为 datetime2(7)类型

 
  

下面的示例说明了 date 参数的用法:

 
  

结果集如下。

 
  

表中的 列用作 date 参数的示例 column 自变量:

 
  

date 参数接受可以解析为 T-SQL 日期类型的任何表达式,或者可以解析为 datetime2(7) 的任何字符串字面量。 表中的 列充当一个假自变量,用于演示如何在表达式中使用 date 参数:

 
  

如果 datepart 的单位最大精度与输入日期类型相同,则将输入日期截断到此 datepart 将不起作用。

示例 1

 
  

结果集如下。 输入 日期/时间 和截断 日期 参数相同。

 
  

示例 2

 
  

结果集如下。 输入 日期/时间 和截断 日期 参数相同。

 
  

示例 3:smalldatetime 精度

smalldatetime 仅精确到最接近的分钟,即使它有一个秒钟字段。 因此,将其截断到最接近的分钟或最接近的秒将不起作用。

 
  

结果集如下。 输入 smalldatetime 值与截断值相同:

 
  

示例 4:datetime 精度

datetime 仅精确到 3.33 毫秒。 因此,将日期时间断为毫秒可能会产生与用户预期不同的结果。 但是,此截断值与内部存储的 datetime 值相同。

 
  

结果集如下。 截断 日期 与存储 日期相同。 这可能与基于 语句的预期不同。

 
  

如果 日期 截断尝试回溯到该数据类型支持的最小日期之前的日期,则会引发错误。 此错误仅在使用 datepart 时发生。 使用 datepart 时无法发生,因为所有 T-SQL 日期类型都巧合地使用星期一作为其最小日期。 下面是一个包含相应结果错误消息的示例:

 
  
 
  

如果函数或输入日期数据类型不支持使用的 datepart,则会引发错误。 在以下情况下可能会发生此错误:

  1. 使用了不受 支持的 datepart(即 、 或 )
  2. 与 time 相关的 datepart 配合 date 数据类型使用或者与 date 相关的 datepart 配合 time 数据类型使用。 下面是一个包含相应结果错误消息的示例:
     
     
  3. 日期 部分 需要比数据类型支持的更小数部分时间刻度精度。 有关详细信息,请参阅 分数时间刻度精度。 下面是一个包含相应结果错误消息的示例:
     
     
  • @@DATEFIRST (Transact-SQL)
  • DATEPART (Transact-SQL)
  • 日期和时间数据类型及函数 (Transact-SQL)
到此这篇dateutils 工具类(dbutils工具类)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 动态库和静态库的优缺点(动态库与静态库的区别)2025-06-18 08:54:05
  • 工具类英文怎么写(各类工具的英文)2025-06-18 08:54:05
  • nat类型检测工具(nat 检测)2025-06-18 08:54:05
  • 跨区域物流(跨区域物流市场是由什么组成)2025-06-18 08:54:05
  • 苹果手机密码库在哪(苹果的密码库在哪)2025-06-18 08:54:05
  • 程序员培训班一般多少钱(程序员培训班一般多少钱一年)2025-06-18 08:54:05
  • Linux文件权限命令(linux 文件权限 s)2025-06-18 08:54:05
  • esp32 天气时钟(esp32天气时钟TFT)2025-06-18 08:54:05
  • 蓝牙的地址(蓝牙地址信息)2025-06-18 08:54:05
  • tip 影响因子(tip影响因子2023)2025-06-18 08:54:05
  • 全屏图片