Azure Data Factory映射数据流:判断Date列是否存在并按需添加
在Azure Data Factory数据映射数据流中处理动态列存在性的解决方案
你之前用条件select直接判断name=='Date'报错,是因为当输入文件里没有Date列时,直接引用该列会触发“列不存在”的错误,得换个方式用安全的列存在性检测逻辑:
先添加派生列转换:
创建一个名为Date的新列,输入表达式:ifelse(exists('Date'), Date, toString(null))这个表达式的逻辑是:用
exists('Date')检测当前数据流中是否存在Date列,存在就取原列的值,不存在就生成一个空白字符串(如果需要日期类型的空值,就把toString(null)换成date(null))。再添加选择转换:
勾选你需要输出的所有列,包括刚才派生的Date列——如果原数据有Date列,派生的列会覆盖原列;如果没有,就会输出这个新生成的空白列。
这样就能避免列不存在时的报错,实现“有则选、无则创空白列”的需求。
内容的提问来源于stack exchange,提问作者Candice
相关产品推荐
相关产品推荐

