在ADF数据流中将MMM DD YYYY HH:mm:ss转换为dd-mm-yyyy HH:mm:ss
在ADF数据流派生列中转换日期时间格式
要将Jun 18 2023 8:55:31 PM这类格式转换为18-06-2023 20:55:31,只需在派生列步骤中组合使用ADF数据流的toTimestamp()和toString()函数,具体操作如下:
第一步:解析原始字符串为时间戳
使用toTimestamp()函数识别原始日期字符串的格式,将其转换为ADF可处理的时间戳类型:toTimestamp(your_source_column, 'MMM dd yyyy h:mm:ss a')格式参数对应说明:
MMM:匹配英文月份缩写(如Jun、Dec)dd:两位数字表示的日期yyyy:四位数字表示的年份h:12小时制的小时数(支持1位或两位,如8或09)mm:ss:分钟和秒a:匹配AM/PM标识
第二步:格式化时间戳为目标字符串
用toString()将转换后的时间戳按照dd-MM-yyyy HH:mm:ss格式输出:toString(上述时间戳表达式, 'dd-MM-yyyy HH:mm:ss')目标格式参数说明:
dd:两位数字日期MM:两位数字月份(注意大写,小写mm代表分钟)yyyy:四位数字年份HH:24小时制的两位小时数mm:ss:分钟和秒
完整派生列表达式
将两步合并,替换your_source_column为实际源字段名即可直接使用:
toString(toTimestamp(your_source_column, 'MMM dd yyyy h:mm:ss a'), 'dd-MM-yyyy HH:mm:ss')
内容的提问来源于stack exchange,提问作者Aman Singh
相关产品推荐
相关产品推荐

