Interface CustomColumnResolvingTable

  • All Superinterfaces:
    Table

    public interface CustomColumnResolvingTable
    extends Table
    Extension to Table that specifies a custom way to resolve column names.

    It is optional for a Table to implement this interface. If Table does not implement this interface, column resolving will be performed in the default way.

    NOTE: This class is experimental and subject to change/removal without notice.

    • Method Detail

      • resolveColumn

        java.util.List<Pair<RelDataTypeField,​java.util.List<java.lang.String>>> resolveColumn​(RelDataType rowType,
                                                                                                    RelDataTypeFactory typeFactory,
                                                                                                    java.util.List<java.lang.String> names)
        Resolve a column based on the name components. One or more the input name components can be resolved to one field in the table row type, along with a remainder list of name components which have not been resolved within this call, and which in turn can be potentially resolved as sub-field names. In the meantime, this method can return multiple matches, which is a list of pairs containing the resolved field and the remaining name components.
        Parameters:
        rowType - the table row type
        typeFactory - the type factory
        names - the name components to be resolved
        Returns:
        a list of pairs containing the resolved field and the remaining name components.