Hi, fengqi. 上面那种statement的方式,最终将只会产生一个作业,这个作业有机会复用这个source(拓扑图1 个source -> 2 个calc_sink),因此只需要读一次source就行了。 下面那种execute sql两次的方式,将产生两个作业,两个作业完全独立。
-- Best! Xuyang At 2024-03-13 12:26:05, "ha.fen...@aisino.com" <ha.fen...@aisino.com> wrote: >StatementSet stmtSet = tEnv.createStatementSet(); >stmtSet.addInsertSql( > "INSERT INTO RubberOrders SELECT product, amount FROM Orders WHERE product > LIKE '%Rubber%'"); >stmtSet.addInsertSql( > "INSERT INTO GlassOrders SELECT product, amount FROM Orders WHERE product > LIKE '%Glass%'"); >TableResult tableResult2 = stmtSet.execute(); >与下面有什么区别? >tEnv.executeSql( > "INSERT INTO RubberOrders SELECT product, amount FROM Orders WHERE product > LIKE '%Rubber%'"); >tEnv.executeSql( > "INSERT INTO GlassOrders SELECT product, amount FROM Orders WHERE product > LIKE '%Glass%'");