Flink - Table SQL API - 添加一列到 table

Flink - Table SQL API - Add a column to a table

我想知道是否有一种方法可以将具有常量值的列添加到 Flink 中的 table (Java API),类似于 Spark 中的 .withColumn 函数 DF/DS ?

此致, 巴斯蒂安

如果您在 Java 环境中,这可以通过简单的 SELECT 查询并在目录中注册结果 Table 来完成。

// add constant column
Table withColumn = tEnv.sqlQuery("SELECT a, b, c, 'MyConstant' AS d FROM origTable");
// register new table
tEnv.registerTable("tableWithColumn", withColumn);

// query table with constant column
Table result = tEnv.sqlQuery("SELECT * FROM tableWithColumn");

第一个 SQL 查询未立即执行。它更类似于在执行前与第二个查询一起自动内联和优化的视图定义。