SSIS DATEPART 函数

SSIS DATEPART 函数是一个日期/时间函数,它将从给定的日期字段中返回日期的特定部分。本文将通过一个示例解释如何使用 DATEPART 函数,返回特定日期部分的语法如下所示。

DATEPART(<<datepart>>, <<date>>)

datepart:SSIS DATEPART 函数返回属于此参数的整数值。例如,DATEPART(“m”, 2006-05-28) 将返回月份的数字,结果是 5。下表显示了日期部分及其描述。

  1. Year =yyyy
  2. Month = m
  3. Day = d
  4. Hour = h
  5. Minute = n
  6. Second = s
  7. Week = ww
  8. Weekday =w
  9. Day of Week=y
  10. Quarter = q

为了演示 DATEPART 函数,我们使用下面的 Employee 表,该表有 15 条记录。请参阅 SSIS 中的 Union All TransformationDerived Column Transformation内置函数SQL Server 文章。

Source Table

SSIS DATEPART 函数

对于这个 DATEPART 示例,我将添加一个数据流任务并双击它以进入数据流区域。接下来,添加 OLE DB 源以从上面的 SQL 数据库表中读取数据。请将 OLE DB 源连接到派生列转换,因为它有助于编写 DATEPART 表达式并创建新列。

接下来,双击它以打开派生列转换编辑器。将 SSIS DATEPART 函数拖放到“表达式”下的行单元格中,并将 datepart 替换为年份 (yyyy),将 date 替换为 HireDate 列。您可以手动删除完整的日期表达式,也可以通过拖放 HireDate 列自动替换它。

从以下表达式可以看出,yyyy 返回年份部分,mm 返回月份编号,dd 返回日期编号,hh 返回小时。

DATEPART( "yyyy", [HireDate] )

DATEPART( "mm", [HireDate] )

DATEPART( "dd", [HireDate] )

DATEPART( "hh", [HireDate] )
SSIS DATEPART Function Expression

单击“确定”关闭编辑器窗口。

拖放 Union All Transformation 并将其与派生列连接。接下来,右键单击连接节点并选择“启用数据查看器”。请运行 DATEPART 函数包以查看 HireDate 列中的年份、月份、日期和小时值。

DATEPART Function output