如何在Azure Data Factory中使用表达式生成器创建指定格式DDL语句
在Azure Data Factory中使用表达式生成器生成目标DDL
输入JSON数据
{"resultSetCount":1,"recordsAffected":78,"resultSets":[{"rowCount":78,"rows":[{"name":"empolyee","type":"NUMBER(12,0)"},{"name":"salary","type":"VARCHAR(16777216)"}]}]}
ADF表达式生成器中的表达式
假设JSON数据通过管道参数inputJson传入,使用以下表达式生成DDL:
concat( 'create or replace TABLE Test_table(', '\n', join( map( pipeline().parameters.inputJson.resultSets[0].rows, (item) => concat(' ', replace(item.name, 'empolyee', 'employee'), ' ', item.type, ',') ), '\n' ), '\n);' )
表达式说明
map函数遍历resultSets[0].rows数组,将每个字段对象转换为带缩进的字段定义字符串(修正了JSON中empolyee的拼写错误)join函数将所有字段定义用换行符拼接concat函数将DDL前缀、字段定义块和后缀拼接成完整语句
生成的目标DDL
create or replace TABLE Test_table( employee NUMBER(12,0), salary VARCHAR(16777216), );
内容的提问来源于stack exchange,提问作者Vamshi Reddy
相关产品推荐
相关产品推荐

