Structs

  • An EquivalenceGroup is a collection of EquivalenceClasses where each class represents a distinct equivalence class in a relation.
  • A EquivalenceProperties object stores useful information related to a schema. Currently, it keeps track of:
  • An OrderingEquivalenceClass object keeps track of different alternative orderings than can describe a schema. For example, consider the following table:
  • Stores the mapping between source expressions and target expressions for a projection.

Functions

  • Adds the offset value to Column indices inside expr. This function is generally used during the update of the right table schema in join operations.
  • This function constructs a duplicate-free LexOrderingReq by filtering out duplicate entries that have same physical expression inside. For example, vec![a Some(Asc), a Some(Desc)] collapses to vec![a Some(Asc)].
  • Calculate ordering equivalence properties for the given join operation.

Type Aliases

  • An EquivalenceClass is a set of Arc<dyn PhysicalExpr>s that are known to have the same value for all tuples in a relation. These are generated by equality predicates, typically equi-join conditions and equality conditions in filters.