flink 1.9 中 StreamTableEnvironment 注册 registerDataStream处理嵌套别名

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

flink 1.9 中 StreamTableEnvironment 注册 registerDataStream处理嵌套别名

Jun Zou
Hi,
我在使用flink 1.9版本的 StreamTableEnvironment 注册 table 时,想指定一个嵌套字段的 cloumns
alianame,
例如:
String fieldExprsStr = "modbus.parsedResponse,timestamp";
tableEnv.registerDataStream(src.getName(), srcStream, fieldExprsStr);
在对 modbus.parsedResponse 进行校验的时候
抛出了如下错误:
org.apache.flink.table.api.ValidationException: Field reference expression
or alias on field expression expected.
at
org.apache.flink.table.typeutils.FieldInfoUtils$IndexedExprToFieldInfo.defaultMethod(FieldInfoUtils.java:543)
at
org.apache.flink.table.typeutils.FieldInfoUtils$IndexedExprToFieldInfo.defaultMethod(FieldInfoUtils.java:470)
at
org.apache.flink.table.expressions.utils.ApiExpressionDefaultVisitor.visit(ApiExpressionDefaultVisitor.java:92)
at
org.apache.flink.table.expressions.ApiExpressionVisitor.visit(ApiExpressionVisitor.java:37)
at
org.apache.flink.table.expressions.LookupCallExpression.accept(LookupCallExpression.java:67)

请问是否有方法来指定这种cloumns 别名呢?