有谁知道如何在 Data Fusion 中将字符串转换为日期,以便它作为“日期”而不是字符串写入目标?
我们正在使用数据融合来使用来自 GCS(谷歌云存储)的 csv。Data Fusion 将所有字段检测为字符串,我们希望将其中一些实际上是日期的字段作为 Date 更改/转换为 BigQuery(目标)。这是作为争论的一部分执行的,还是管道中的转换选项之一?谢谢你。
有谁知道如何在 Data Fusion 中将字符串转换为日期,以便它作为“日期”而不是字符串写入目标?
我们正在使用数据融合来使用来自 GCS(谷歌云存储)的 csv。Data Fusion 将所有字段检测为字符串,我们希望将其中一些实际上是日期的字段作为 Date 更改/转换为 BigQuery(目标)。这是作为争论的一部分执行的,还是管道中的转换选项之一?谢谢你。
您可以使用 Wrangler 变换来执行此操作。在 Wrangler UI 中,您可以使用列下拉菜单中的 Parse -> Simple Date 将 String 类型的列转换为 Date。
对于这种特定的日期格式,Wrangler Transform 指令将是:
parse-as-simple-date date_field_dt yyyyMMdd
set-column date_field_dt date_field_dt.toLocalDate()
如果目的地是日期类型,则需要第二行。
跳过空值:
set-column date_field_dt empty(date_field_dt) ? date_field_dt : date_field_dt.toLocalDate()
参考:
https://github.com/data-integrations/wrangler/blob/develop/wrangler-docs/directives/parse-as-date.md
https://cdap.atlassian.net/wiki/spaces/KB/pages/208076805/Perform+date+transformations+in+Wrangler