You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何避免ADF管道写入CSV时将日期字段转为日期时间格式?

问题分析与解决方案

为什么ADF会给日期类型加时间戳?

ADF写入CSV时,默认会把日期/时间类型数据转成完整的datetime格式输出——哪怕源数据是date类型(仅含年月日),也会自动补全时间部分为00:00:00.0000000。本质是因为CSV没有原生日期类型,ADF默认用统一的带时间戳格式序列化这类数据。

解决办法

办法1:在Synapse查询里直接格式化日期

修改你的SQL语句,用format函数直接输出指定格式的日期字符串:

select ID, format(created_date, 'dd-MM-yyyy') as createddate
from table

然后去ADF的CSV接收器配置里:

  • 打开Sink标签,把Quote character设为None
  • 确认数据集Schema里createddate的类型是String

这样输出的CSV里,createddate就是不带引号的03-05-2024。

办法2:通过ADF数据集配置调整格式

如果想保留源数据的date类型,直接在ADF里改配置:

  1. 打开CSV接收器的数据集,进入Schema标签
  2. 找到createddate字段,把类型改成String
  3. 点击字段旁边的Format设置,输入日期格式dd-MM-yyyy(如果是月-日-年格式就用MM-dd-yyyy)
  4. 切到Connection标签,把Quote character设为None

这样ADF会自动把date类型转成指定格式的字符串,而且不会加引号。

注意点

  • 格式字符串要和你预期的日期格式对应,别写错格式顺序
  • 把Quote character设为None时,要确保日期字段里没有CSV的分隔符(比如逗号),否则会打乱数据结构

内容的提问来源于stack exchange,提问作者Dinesh Kumar Rajendran

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 18:15:02