繁体   English   中英

在 AZure 数据工厂中映射日期

[英]mapping Date in AZure Data Factory

这次我与 Data actory 合作,这就是为什么我会问很多问题

我的新问题是我的 SOURCE(CSV 文件包含一个充满日期 dd/MM/YYYY 的列 DeleveryDate)和我的表 SQl,其中我将 DElevry 日期指定为 DateTime 但是当我在数据预览源中映射 btw 源和接收器时在此处输入图片说明

如下图所示的重复列,但在数据预览接收器中,列在我的表 NULL 中始终为 NULL。

在此处输入图片说明 谢谢

你说的列 DeleveryDate 充满了日期 dd/MM/YYYY),你能告诉我为什么列 DeleveryDate 在你的屏幕截图中有像 '3'、'1' 这样的值吗? 字符串 '3' 或 '1' 不是格式为dd/MM/YYYY的日期字符串。

如果您想在数据工厂中进行一些数据转换,我仍然建议您了解更多有关数据流的知识

目前,我们无法将日期格式从dd/MM/YYYY直接转换为日期时间yyyy-MM-dd HH:mm:ss.SSS ,我们必须进行一些其他转换。

看看下面,我有一个 csv 文件,其中包含一个日期格式为dd/MM/YYYY字符串的列,这次我仍然使用DerivedColumn

在此处输入图片说明

添加派生列

在此处输入图片说明

首先,使用这个波纹管表达式子字符串并将dd/MM/YYYY转换为YYYY-MM-dd

substring(Column_2, 7, 4)+'-'+substring(Column_2, 4, 2)+'-'+substring(Column_2, 1,2)

在此处输入图片说明

然后使用toTimestamp()进行转换:

toTimestamp(substring(Column_2, 7, 4)+'-'+substring(Column_2, 4, 2)+'-'+substring(Column_2, 1,2), 'yyyy-MM-dd')

在此处输入图片说明

接收器设置和预览

我的接收器表列 tt 数据类型是日期时间:

在此处输入图片说明

执行管道:

在此处输入图片说明

查看sink表中的数据:

在此处输入图片说明

希望这可以帮助。

请试试这个 - 这是一个对我来说是个障碍的技巧,但是试试这个 -

  1. 去水槽
  2. 映射
  3. 点击输出格式
  4. 选择您喜欢的数据格式或时间格式将数据存储到接收器中。 在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM