Expand description
JOIN reordering and cross-join optimization Join Optimization Module
This module provides functionality for optimizing JOIN operations:
- Removing cross joins when possible
- Reordering joins based on predicate dependencies
- Normalizing join syntax (removing unnecessary INNER/OUTER keywords)
Ported from sqlglot’s optimizer/optimize_joins.py
Functions§
- is_
reorderable - Check if joins can be reordered without changing query semantics.
- normalize_
joins - Normalize join syntax by removing unnecessary keywords.
- optimize_
joins - Optimize joins by removing cross joins and reordering based on dependencies.
- reorder_
joins - Reorder joins by topological sort based on predicate dependencies.