Q1:結合フィルターなどから同等のフィルターを派生させる方法はありますか?
select * from t1, t2 where t1.a = t2.b and t1.a = 2;
クエリに従うことと等価です。
Q2:
select * from t1, t2 where t1.a = t2.b and t1.a = 2 and t2.b = 2;
今は、私はQ1のためのプランを生成するようにApache方解石を使用し、それを最適化するためにFilterJoinRule.FILTER_ON_JOIN
とFilterJoinRule.JOIN
を使用しています。しかし、これらの規則は追加のフィルタt2.b = 2
を導出しません。
Calciteで同等のフィルタを得るための規則や方法はありますか?ありがとう。
もしそうでなければ、私はそれをサポートしたいと思います。なにか提案を?