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 Details

    • resolveColumn

      List<Pair<RelDataTypeField,List<String>>> resolveColumn(RelDataType rowType, RelDataTypeFactory typeFactory, List<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.