public abstract class RelOptAbstractTable extends Object implements RelOptTable
RelOptTable.RelOptTable.ToRelContext, RelOptTable.ViewExpander| Modifier and Type | Field and Description |
|---|---|
protected String |
name |
protected RelDataType |
rowType |
protected RelOptSchema |
schema |
| Modifier | Constructor and Description |
|---|---|
protected |
RelOptAbstractTable(RelOptSchema schema,
String name,
RelDataType rowType) |
| Modifier and Type | Method and Description |
|---|---|
RelOptTable |
extend(List<RelDataTypeField> extendedFields)
Returns a table with the given extra fields.
|
List<RelCollation> |
getCollationList()
Returns a description of the physical ordering (or orderings) of the rows
returned from this table.
|
RelDistribution |
getDistribution()
Returns a description of the physical distribution of the rows
in this table.
|
Expression |
getExpression(Class clazz)
Generates code for this table.
|
String |
getName() |
List<String> |
getQualifiedName()
Obtains an identifier for this table.
|
RelOptSchema |
getRelOptSchema()
Returns the
RelOptSchema this table belongs to. |
double |
getRowCount()
Returns an estimate of the number of rows in the table.
|
RelDataType |
getRowType()
Describes the type of rows returned by this table.
|
boolean |
isKey(ImmutableBitSet columns)
Returns whether the given columns are a key or a superset of a unique key
of this table.
|
RelNode |
toRel(RelOptTable.ToRelContext context)
Converts this table into a
relational expression. |
<T> T |
unwrap(Class<T> clazz)
Finds an interface implemented by this table.
|
protected final RelOptSchema schema
protected final RelDataType rowType
protected final String name
protected RelOptAbstractTable(RelOptSchema schema, String name, RelDataType rowType)
public String getName()
public List<String> getQualifiedName()
RelOptTablegetQualifiedName in interface RelOptTablepublic double getRowCount()
RelOptTablegetRowCount in interface RelOptTablepublic RelDataType getRowType()
RelOptTablegetRowType in interface RelOptTablepublic RelOptSchema getRelOptSchema()
RelOptTableRelOptSchema this table belongs to.getRelOptSchema in interface RelOptTablepublic List<RelCollation> getCollationList()
RelOptTablegetCollationList in interface RelOptTableRelMetadataQuery.collations(RelNode)public RelDistribution getDistribution()
RelOptTablegetDistribution in interface RelOptTableRelMetadataQuery.distribution(RelNode)public <T> T unwrap(Class<T> clazz)
RelOptTableunwrap in interface RelOptTablepublic boolean isKey(ImmutableBitSet columns)
RelOptTableisKey in interface RelOptTablecolumns - Ordinals of key columnspublic RelNode toRel(RelOptTable.ToRelContext context)
RelOptTablerelational expression.
The planner calls this
method to convert a table into an initial relational expression,
generally something abstract, such as a
LogicalTableScan,
then optimizes this expression by
applying rules to transform it
into more efficient access methods for this table.
toRel in interface RelOptTablepublic Expression getExpression(Class clazz)
RelOptTablegetExpression in interface RelOptTableclazz - The desired collection class; for example Queryable.public RelOptTable extend(List<RelDataTypeField> extendedFields)
RelOptTableextend in interface RelOptTableCopyright © 2012–2015 The Apache Software Foundation. All rights reserved.