[英]Get nested fields from Kafka message using Apache Flink SQL
[英]How to get insert fields from sql?
我正在使用 Flink Sql 來解析 sql 的沿襲。 我使用 flink planner 將 sql 解析為
insert into target_table(dest_f1, dest_f2) select source_f1, source_f2 from source_table
很明顯,source_f1 就是 dest_f1 的來源。
當我通過 Flink planner 獲取 CatalogSinkModifyOperation 時,CatalogSinkModifyOperation 不包含任何插入列信息,這意味着沒有 dest_f1,dest_f2。
如何從我的目標表中獲取插入列的名稱?
可以使用如下代碼獲取目標表的列信息:
List<String> targetColumnList = tableEnv.from(sinkTable)
.getResolvedSchema()
.getColumnNames();
要么
relNode.getRowType().getFieldNames()
如果想解析flink sql字段的lineage,可以參考開源項目: https://github.com/HamaWhiteGG/flink-sql-lineage
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.