Let TableEnv register a ViewTable .
Consider a specific useCase, in sql it seems like:
create view v1 as select id, udf(content) as c1 from t1
when we executing a query like
select * from t2 join v1 on t2.id=v1.id and v1.id<10000
the predicate condition v1.id<10000 can be pushed down.
The final sql will be
select * from t2 join (select id, udf(content) as c1 from t1 where id<10000)v1 on t2.id=v1.id,
so the cost can be reduced.
Let TableEnv register a ViewTable .
Consider a specific useCase, in sql it seems like:
create view v1 as select id, udf(content) as c1 from t1when we executing a query like
select * from t2 join v1 on t2.id=v1.id and v1.id<10000the predicate condition
v1.id<10000can be pushed down.The final sql will be
select * from t2 join (select id, udf(content) as c1 from t1 where id<10000)v1 on t2.id=v1.id,so the cost can be reduced.