0

我有一个 PDI (Kettle) 作业,它使用小时、分钟和秒列填充 dim_time 表。

我想创建第四个(聚合)列,其中包含给定时间的表示形式,例如 HH:MM:SS,我该如何在 PDI 上做到这一点?

4

1 回答 1

2

有很多方法可以做到这一点。如果您希望将第四列作为字符串,则可以使用此“仅点击式”解决方案:

插入一个Calculator步骤并插入字段,如下所示:


  • 新字段: h1
  • 计算:创建字段 A 的副本
  • 字段 A:小时
  • 字段 B:
  • 值类型:字符串
  • 删除:
  • 转换掩码: 00:

  • 新领域: m1
  • 计算:创建字段 A 的副本
  • 字段 A:分钟
  • 字段 B:
  • 值类型:字符串
  • 删除:
  • 转换掩码: 00:

  • 新字段: s1
  • 计算:创建字段 A 的副本
  • 字段 A:第二
  • 字段 B:
  • 值类型:字符串
  • 删除:
  • 转换掩码: 00 (注意这里没有“:”)

  • 新领域: t1
  • 计算: A + B
  • 字段 A: h1
  • B场: m1
  • 值类型:字符串
  • 删除:
  • 转换掩码:

  • 新字段: time_string
  • 计算: A + B
  • 字段 A: t1
  • 字段 B: s1
  • 值类型:字符串
  • 删除: N (注意这里,选择 N 否则您想要的字段将不会添加到流中)
  • 转换掩码:

这应该就是你所需要的。可能有使用 javascript 的方法,但您需要编写代码并找到正确的字符串格式化函数。

于 2012-10-13T13:46:52.457 回答