Class RelColumnOrigin


  • public class RelColumnOrigin
    extends java.lang.Object
    RelColumnOrigin is a data structure describing one of the origins of an output column produced by a relational expression.
    • Field Detail

      • iOriginColumn

        private final int iOriginColumn
      • isDerived

        private final boolean isDerived
    • Constructor Detail

      • RelColumnOrigin

        public RelColumnOrigin​(RelOptTable originTable,
                               int iOriginColumn,
                               boolean isDerived)
    • Method Detail

      • getOriginTable

        public RelOptTable getOriginTable()
        Returns:
        table of origin
      • getOriginColumnOrdinal

        public int getOriginColumnOrdinal()
        Returns:
        0-based index of column in origin table; whether this ordinal is flattened or unflattened depends on whether UDT flattening has already been performed on the relational expression which produced this description
      • isDerived

        public boolean isDerived()
        Consider the query select a+b as c, d as e from t. The output column c has two origins (a and b), both of them derived. The output column d as one origin (c), which is not derived.
        Returns:
        false if value taken directly from column in origin table; true otherwise
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object