public class RelOptTableImpl extends Prepare.AbstractPreparingTable
RelOptTable.RelOptTable.ToRelContext, RelOptTable.ViewExpander| Modifier and Type | Method and Description |
|---|---|
static List<ColumnStrategy> |
columnStrategies(RelOptTable table)
|
RelOptTableImpl |
copy(RelDataType newRowType)
Creates a copy of this RelOptTable.
|
static RelOptTableImpl |
create(RelOptSchema schema,
RelDataType rowType,
CalciteSchema.TableEntry tableEntry,
Double rowCount) |
static RelOptTableImpl |
create(RelOptSchema schema,
RelDataType rowType,
List<String> names,
org.apache.calcite.linq4j.tree.Expression expression) |
static RelOptTableImpl |
create(RelOptSchema schema,
RelDataType rowType,
List<String> names,
Table table,
org.apache.calcite.linq4j.tree.Expression expression) |
static RelOptTableImpl |
create(RelOptSchema schema,
RelDataType rowType,
Table table,
com.google.common.collect.ImmutableList<String> names) |
static RelOptTableImpl |
create(RelOptSchema schema,
RelDataType rowType,
Table table,
Path path) |
boolean |
equals(Object obj) |
protected RelOptTable |
extend(Table extendedTable)
Implementation-specific code to instantiate a new
RelOptTable
based on a Table that has been extended. |
SqlAccessType |
getAllowedAccess()
Returns the access type of the table.
|
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.
|
org.apache.calcite.linq4j.tree.Expression |
getExpression(Class clazz)
Generates code for this table.
|
List<ImmutableBitSet> |
getKeys()
Returns a list of unique keys, empty list if no key exist,
the result should be consistent with
isKey. |
SqlMonotonicity |
getMonotonicity(String columnName)
Returns whether a given column is monotonic.
|
List<String> |
getQualifiedName()
Obtains an identifier for this table.
|
List<RelReferentialConstraint> |
getReferentialConstraints()
Returns the referential constraints existing 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.
|
int |
hashCode() |
boolean |
isKey(ImmutableBitSet columns)
Returns whether the given columns are a key or a superset of a unique key
of this table.
|
boolean |
isTemporal()
Returns whether the table is temporal.
|
static int |
realOrdinal(RelOptTable table,
int i)
Converts the ordinal of a field into the ordinal of a stored field.
|
static RelDataType |
realRowType(RelOptTable table)
Returns the row type of a table after any
ColumnStrategy.VIRTUAL
columns have been removed. |
boolean |
supportsModality(SqlModality modality) |
RelNode |
toRel(RelOptTable.ToRelContext context)
Converts this table into a
relational expression. |
String |
toString() |
<T> T |
unwrap(Class<T> clazz)
Finds an instance of an interface implemented by this object,
or returns null if this object does not support that interface.
|
columnHasDefaultValue, extend, getColumnStrategiespublic static RelOptTableImpl create(RelOptSchema schema, RelDataType rowType, List<String> names, org.apache.calcite.linq4j.tree.Expression expression)
public static RelOptTableImpl create(RelOptSchema schema, RelDataType rowType, List<String> names, Table table, org.apache.calcite.linq4j.tree.Expression expression)
public static RelOptTableImpl create(RelOptSchema schema, RelDataType rowType, Table table, Path path)
public static RelOptTableImpl create(RelOptSchema schema, RelDataType rowType, CalciteSchema.TableEntry tableEntry, Double rowCount)
public RelOptTableImpl copy(RelDataType newRowType)
public static RelOptTableImpl create(RelOptSchema schema, RelDataType rowType, Table table, com.google.common.collect.ImmutableList<String> names)
public <T> T unwrap(Class<T> clazz)
Wrapperpublic org.apache.calcite.linq4j.tree.Expression getExpression(Class clazz)
RelOptTableclazz - The desired collection class; for example Queryable.protected RelOptTable extend(Table extendedTable)
Prepare.AbstractPreparingTableRelOptTable
based on a Table that has been extended.extend in class Prepare.AbstractPreparingTablepublic double getRowCount()
RelOptTablepublic RelOptSchema getRelOptSchema()
RelOptTableRelOptSchema this table belongs to.public 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.
public List<RelCollation> getCollationList()
RelOptTableRelMetadataQuery.collations(RelNode)public RelDistribution getDistribution()
RelOptTableRelMetadataQuery.distribution(RelNode)public boolean isKey(ImmutableBitSet columns)
RelOptTablecolumns - Ordinals of key columnspublic List<ImmutableBitSet> getKeys()
RelOptTableisKey.public List<RelReferentialConstraint> getReferentialConstraints()
RelOptTableRelReferentialConstraint nodes.public RelDataType getRowType()
RelOptTablepublic boolean supportsModality(SqlModality modality)
public boolean isTemporal()
SqlValidatorTablepublic List<String> getQualifiedName()
RelOptTablepublic SqlMonotonicity getMonotonicity(String columnName)
SqlValidatorTablepublic SqlAccessType getAllowedAccess()
SqlValidatorTablepublic static List<ColumnStrategy> columnStrategies(RelOptTable table)
public static int realOrdinal(RelOptTable table, int i)
public static RelDataType realRowType(RelOptTable table)
ColumnStrategy.VIRTUAL
columns have been removed. This is the type of the records that are
actually stored.Copyright © 2012-2020 Apache Software Foundation. All Rights Reserved.