There is Calcite rule JoinPushTransitivePredicatesRule but it does not work in Drill.
Applying it in Drill will allow for equi-join queries to push filter condition from one table to another:
In that case it is possible that Scan operator for A table will not scan all data.
For table A it can lead for applying:
1. Partition pruning for Hive tables and partiotion/directory pruning for file system tables
2. Parquet filter pushdown