Package | Description |
---|---|
org.apache.calcite.adapter.enumerable |
Query optimizer rules for Java calling convention.
|
org.apache.calcite.adapter.jdbc |
Query provider based on a JDBC data source.
|
org.apache.calcite.interpreter |
Provides an implementation of relational expressions using an interpreter.
|
org.apache.calcite.plan |
Defines interfaces for constructing rule-based optimizers of
relational expressions.
|
org.apache.calcite.rel.core |
Defines core relational expressions.
|
org.apache.calcite.rel.logical |
Defines logical relational expressions.
|
org.apache.calcite.rel.metadata |
Defines metadata interfaces and utilities for relational
expressions.
|
org.apache.calcite.rel.mutable |
Defines mutable relational expressions.
|
org.apache.calcite.rel.rel2sql |
Translates a relational expression to SQL parse tree.
|
org.apache.calcite.rel.rules |
Provides a core set of planner rules.
|
org.apache.calcite.sql |
Provides a SQL parser and object model.
|
org.apache.calcite.sql.validate |
SQL validation.
|
org.apache.calcite.sql2rel |
Translates a SQL parse tree to relational expression.
|
org.apache.calcite.tools |
Provides utility classes.
|
Modifier and Type | Method and Description |
---|---|
EnumerableCorrelate |
EnumerableCorrelate.copy(RelTraitSet traitSet,
RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType) |
EnumerableNestedLoopJoin |
EnumerableNestedLoopJoin.copy(RelTraitSet traitSet,
RexNode condition,
RelNode left,
RelNode right,
JoinRelType joinType,
boolean semiJoinDone) |
EnumerableMergeJoin |
EnumerableMergeJoin.copy(RelTraitSet traitSet,
RexNode condition,
RelNode left,
RelNode right,
JoinRelType joinType,
boolean semiJoinDone) |
EnumerableSemiJoin |
EnumerableSemiJoin.copy(RelTraitSet traitSet,
RexNode condition,
RelNode left,
RelNode right,
JoinRelType joinType,
boolean semiJoinDone)
Deprecated.
|
EnumerableHashJoin |
EnumerableHashJoin.copy(RelTraitSet traitSet,
RexNode condition,
RelNode left,
RelNode right,
JoinRelType joinType,
boolean semiJoinDone) |
static EnumerableCorrelate |
EnumerableCorrelate.create(RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType)
Creates an EnumerableCorrelate.
|
static EnumerableMergeJoin |
EnumerableMergeJoin.create(RelNode left,
RelNode right,
RexLiteral condition,
ImmutableIntList leftKeys,
ImmutableIntList rightKeys,
JoinRelType joinType) |
static EnumerableNestedLoopJoin |
EnumerableNestedLoopJoin.create(RelNode left,
RelNode right,
RexNode condition,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType)
Creates an EnumerableNestedLoopJoin.
|
static EnumerableHashJoin |
EnumerableHashJoin.create(RelNode left,
RelNode right,
RexNode condition,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType)
Creates an EnumerableHashJoin.
|
(package private) static Expression |
EnumUtils.joinSelector(JoinRelType joinType,
PhysType physType,
java.util.List<PhysType> inputPhysTypes) |
(package private) static JoinType |
EnumUtils.toLinq4jJoinType(JoinRelType joinRelType)
Transforms a JoinRelType to Linq4j JoinType.
|
Constructor and Description |
---|
EnumerableCorrelate(RelOptCluster cluster,
RelTraitSet traits,
RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType) |
EnumerableHashJoin(RelOptCluster cluster,
RelTraitSet traits,
RelNode left,
RelNode right,
RexNode condition,
ImmutableIntList leftKeys,
ImmutableIntList rightKeys,
JoinRelType joinType,
java.util.Set<java.lang.String> variablesStopped)
Deprecated.
|
EnumerableHashJoin(RelOptCluster cluster,
RelTraitSet traits,
RelNode left,
RelNode right,
RexNode condition,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType)
Creates an EnumerableHashJoin.
|
EnumerableMergeJoin(RelOptCluster cluster,
RelTraitSet traits,
RelNode left,
RelNode right,
RexNode condition,
ImmutableIntList leftKeys,
ImmutableIntList rightKeys,
JoinRelType joinType,
java.util.Set<java.lang.String> variablesStopped)
Deprecated.
|
EnumerableMergeJoin(RelOptCluster cluster,
RelTraitSet traits,
RelNode left,
RelNode right,
RexNode condition,
ImmutableIntList leftKeys,
ImmutableIntList rightKeys,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType)
Deprecated.
|
EnumerableMergeJoin(RelOptCluster cluster,
RelTraitSet traits,
RelNode left,
RelNode right,
RexNode condition,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType) |
EnumerableNestedLoopJoin(RelOptCluster cluster,
RelTraitSet traits,
RelNode left,
RelNode right,
RexNode condition,
JoinRelType joinType,
java.util.Set<java.lang.String> variablesStopped)
Deprecated.
|
EnumerableNestedLoopJoin(RelOptCluster cluster,
RelTraitSet traits,
RelNode left,
RelNode right,
RexNode condition,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType)
Creates an EnumerableNestedLoopJoin.
|
Modifier and Type | Method and Description |
---|---|
JdbcRules.JdbcJoin |
JdbcRules.JdbcJoin.copy(RelTraitSet traitSet,
RexNode condition,
RelNode left,
RelNode right,
JoinRelType joinType,
boolean semiJoinDone) |
Constructor and Description |
---|
JdbcJoin(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode left,
RelNode right,
RexNode condition,
JoinRelType joinType,
java.util.Set<java.lang.String> variablesStopped)
Deprecated.
|
JdbcJoin(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode left,
RelNode right,
RexNode condition,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType)
Creates a JdbcJoin.
|
Modifier and Type | Method and Description |
---|---|
Bindables.BindableJoin |
Bindables.BindableJoin.copy(RelTraitSet traitSet,
RexNode conditionExpr,
RelNode left,
RelNode right,
JoinRelType joinType,
boolean semiJoinDone) |
Constructor and Description |
---|
BindableJoin(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode left,
RelNode right,
RexNode condition,
JoinRelType joinType,
java.util.Set<java.lang.String> variablesStopped)
Deprecated.
|
BindableJoin(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode left,
RelNode right,
RexNode condition,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType)
Creates a BindableJoin.
|
Modifier and Type | Method and Description |
---|---|
static JoinRelType |
RelOptUtil.simplifyJoin(RelNode joinRel,
com.google.common.collect.ImmutableList<RexNode> aboveFilters,
JoinRelType joinType)
Simplifies outer joins if filter above would reject nulls.
|
Modifier and Type | Method and Description |
---|---|
static boolean |
RelOptUtil.classifyFilters(RelNode joinRel,
java.util.List<RexNode> filters,
JoinRelType joinType,
boolean pushInto,
boolean pushLeft,
boolean pushRight,
java.util.List<RexNode> joinFilters,
java.util.List<RexNode> leftFilters,
java.util.List<RexNode> rightFilters)
Classifies filters according to where they should be processed.
|
static JoinRelType |
RelOptUtil.simplifyJoin(RelNode joinRel,
com.google.common.collect.ImmutableList<RexNode> aboveFilters,
JoinRelType joinType)
Simplifies outer joins if filter above would reject nulls.
|
Modifier and Type | Field and Description |
---|---|
protected JoinRelType |
Join.joinType
Values must be of enumeration
JoinRelType , except that
RIGHT is disallowed. |
protected JoinRelType |
Correlate.joinType |
Modifier and Type | Method and Description |
---|---|
JoinRelType |
JoinRelType.cancelNullsOnLeft()
Returns a join type similar to this but that does not generate nulls on
the left.
|
JoinRelType |
JoinRelType.cancelNullsOnRight()
Returns a join type similar to this but that does not generate nulls on
the right.
|
JoinRelType |
Join.getJoinType() |
JoinRelType |
Correlate.getJoinType() |
JoinRelType |
JoinRelType.swap()
Swaps left to right, and vice versa.
|
static JoinRelType |
JoinRelType.valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name.
|
static JoinRelType[] |
JoinRelType.values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
Modifier and Type | Method and Description |
---|---|
abstract Correlate |
Correlate.copy(RelTraitSet traitSet,
RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType) |
abstract Join |
Join.copy(RelTraitSet traitSet,
RexNode conditionExpr,
RelNode left,
RelNode right,
JoinRelType joinType,
boolean semiJoinDone)
Creates a copy of this join, overriding condition, system fields and
inputs.
|
SemiJoin |
SemiJoin.copy(RelTraitSet traitSet,
RexNode condition,
RelNode left,
RelNode right,
JoinRelType joinType,
boolean semiJoinDone)
Deprecated.
|
RelNode |
RelFactories.CorrelateFactory.createCorrelate(RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType)
Creates a correlate.
|
RelNode |
RelFactories.CorrelateFactoryImpl.createCorrelate(RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType) |
default RelNode |
RelFactories.JoinFactory.createJoin(RelNode left,
RelNode right,
RexNode condition,
JoinRelType joinType,
java.util.Set<java.lang.String> variablesStopped,
boolean semiJoinDone)
Deprecated.
|
RelNode |
RelFactories.JoinFactory.createJoin(RelNode left,
RelNode right,
RexNode condition,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType,
boolean semiJoinDone)
Creates a join.
|
RelNode |
RelFactories.JoinFactoryImpl.createJoin(RelNode left,
RelNode right,
RexNode condition,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType,
boolean semiJoinDone) |
static RelDataType |
Join.deriveJoinRowType(RelDataType leftType,
RelDataType rightType,
JoinRelType joinType,
RelDataTypeFactory typeFactory,
java.util.List<java.lang.String> fieldNameList,
java.util.List<RelDataTypeField> systemFieldList)
Deprecated.
|
Constructor and Description |
---|
Correlate(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType)
Creates a Correlate.
|
EquiJoin(RelOptCluster cluster,
RelTraitSet traits,
RelNode left,
RelNode right,
RexNode condition,
ImmutableIntList leftKeys,
ImmutableIntList rightKeys,
JoinRelType joinType,
java.util.Set<java.lang.String> variablesStopped)
Deprecated.
|
EquiJoin(RelOptCluster cluster,
RelTraitSet traits,
RelNode left,
RelNode right,
RexNode condition,
ImmutableIntList leftKeys,
ImmutableIntList rightKeys,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType)
Deprecated.
|
EquiJoin(RelOptCluster cluster,
RelTraitSet traits,
RelNode left,
RelNode right,
RexNode condition,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType)
Creates an EquiJoin.
|
Join(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode left,
RelNode right,
RexNode condition,
JoinRelType joinType,
java.util.Set<java.lang.String> variablesStopped)
Deprecated.
|
Join(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode left,
RelNode right,
RexNode condition,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType)
Creates a Join.
|
Modifier and Type | Method and Description |
---|---|
LogicalCorrelate |
LogicalCorrelate.copy(RelTraitSet traitSet,
RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType) |
LogicalJoin |
LogicalJoin.copy(RelTraitSet traitSet,
RexNode conditionExpr,
RelNode left,
RelNode right,
JoinRelType joinType,
boolean semiJoinDone) |
static LogicalCorrelate |
LogicalCorrelate.create(RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType)
Creates a LogicalCorrelate.
|
static LogicalJoin |
LogicalJoin.create(RelNode left,
RelNode right,
RexNode condition,
JoinRelType joinType,
java.util.Set<java.lang.String> variablesStopped)
Deprecated.
|
static LogicalJoin |
LogicalJoin.create(RelNode left,
RelNode right,
RexNode condition,
JoinRelType joinType,
java.util.Set<java.lang.String> variablesStopped,
boolean semiJoinDone,
com.google.common.collect.ImmutableList<RelDataTypeField> systemFieldList)
Deprecated.
|
static LogicalJoin |
LogicalJoin.create(RelNode left,
RelNode right,
RexNode condition,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType)
Creates a LogicalJoin.
|
static LogicalJoin |
LogicalJoin.create(RelNode left,
RelNode right,
RexNode condition,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType,
boolean semiJoinDone,
com.google.common.collect.ImmutableList<RelDataTypeField> systemFieldList)
Creates a LogicalJoin, flagged with whether it has been translated to a
semi-join.
|
Constructor and Description |
---|
LogicalCorrelate(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType)
Creates a LogicalCorrelate.
|
LogicalJoin(RelOptCluster cluster,
RelNode left,
RelNode right,
RexNode condition,
JoinRelType joinType,
java.util.Set<java.lang.String> variablesStopped)
Deprecated.
|
LogicalJoin(RelOptCluster cluster,
RelNode left,
RelNode right,
RexNode condition,
JoinRelType joinType,
java.util.Set<java.lang.String> variablesStopped,
boolean semiJoinDone,
com.google.common.collect.ImmutableList<RelDataTypeField> systemFieldList)
Deprecated.
|
LogicalJoin(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode left,
RelNode right,
RexNode condition,
JoinRelType joinType,
java.util.Set<java.lang.String> variablesStopped,
boolean semiJoinDone,
com.google.common.collect.ImmutableList<RelDataTypeField> systemFieldList)
Deprecated.
|
LogicalJoin(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode left,
RelNode right,
RexNode condition,
java.util.Set<CorrelationId> variablesSet,
JoinRelType joinType,
boolean semiJoinDone,
com.google.common.collect.ImmutableList<RelDataTypeField> systemFieldList)
Creates a LogicalJoin.
|
Modifier and Type | Method and Description |
---|---|
static java.util.List<RelCollation> |
RelMdCollation.enumerableCorrelate(RelMetadataQuery mq,
RelNode left,
RelNode right,
JoinRelType joinType) |
static java.util.List<RelCollation> |
RelMdCollation.enumerableHashJoin(RelMetadataQuery mq,
RelNode left,
RelNode right,
JoinRelType joinType)
Returns the collation of
EnumerableHashJoin based on its inputs and the join type. |
private static java.util.List<RelCollation> |
RelMdCollation.enumerableJoin0(RelMetadataQuery mq,
RelNode left,
RelNode right,
JoinRelType joinType) |
static java.util.List<RelCollation> |
RelMdCollation.enumerableNestedLoopJoin(RelMetadataQuery mq,
RelNode left,
RelNode right,
JoinRelType joinType)
Returns the collation of
EnumerableNestedLoopJoin
based on its inputs and the join type. |
static java.lang.Double |
RelMdUtil.getJoinDistinctRowCount(RelMetadataQuery mq,
RelNode joinRel,
JoinRelType joinType,
ImmutableBitSet groupKey,
RexNode predicate,
boolean useMaxNdv)
Computes the number of distinct rows for a set of keys returned from a
join.
|
static java.lang.Double |
RelMdUtil.getSemiJoinRowCount(RelMetadataQuery mq,
RelNode left,
RelNode right,
JoinRelType joinType,
RexNode condition)
Returns an estimate of the number of rows returned by a semi-join.
|
Modifier and Type | Field and Description |
---|---|
JoinRelType |
MutableCorrelate.joinType |
JoinRelType |
MutableJoin.joinType |
Modifier and Type | Method and Description |
---|---|
static MutableCorrelate |
MutableCorrelate.of(RelDataType rowType,
MutableRel left,
MutableRel right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType)
Creates a MutableCorrelate.
|
static MutableJoin |
MutableJoin.of(RelDataType rowType,
MutableRel left,
MutableRel right,
RexNode condition,
JoinRelType joinType,
java.util.Set<CorrelationId> variablesStopped)
Creates a MutableJoin.
|
Constructor and Description |
---|
MutableCorrelate(RelDataType rowType,
MutableRel left,
MutableRel right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType) |
MutableJoin(RelDataType rowType,
MutableRel left,
MutableRel right,
RexNode condition,
JoinRelType joinType,
java.util.Set<CorrelationId> variablesSet) |
Modifier and Type | Method and Description |
---|---|
static JoinType |
SqlImplementor.joinType(JoinRelType joinType) |
Modifier and Type | Field and Description |
---|---|
private com.google.common.collect.ImmutableList<JoinRelType> |
MultiJoin.joinTypes |
private com.google.common.collect.ImmutableList<JoinRelType> |
LoptMultiJoin.joinTypes
If a join factor is null generating in a left or right outer join,
joinTypes indicates the join type corresponding to the factor.
|
Modifier and Type | Method and Description |
---|---|
java.util.List<JoinRelType> |
MultiJoin.getJoinTypes() |
Modifier and Type | Method and Description |
---|---|
boolean |
FilterJoinRule.Predicate.apply(Join join,
JoinRelType joinType,
RexNode exp) |
private LoptJoinTree |
LoptOptimizeJoinRule.createJoinSubtree(RelMetadataQuery mq,
RelBuilder relBuilder,
LoptMultiJoin multiJoin,
LoptJoinTree left,
LoptJoinTree right,
RexNode condition,
JoinRelType joinType,
java.util.List<RexNode> filtersToAdd,
boolean fullAdjust,
boolean selfJoin)
Creates a LogicalJoin given left and right operands and a join condition.
|
protected void |
FilterJoinRule.validateJoinFilters(java.util.List<RexNode> aboveFilters,
java.util.List<RexNode> joinFilters,
Join join,
JoinRelType joinType)
Validates that target execution framework can satisfy join filters.
|
Modifier and Type | Method and Description |
---|---|
private void |
JoinToMultiJoinRule.combineOuterJoins(Join joinRel,
java.util.List<RelNode> combinedInputs,
RelNode left,
RelNode right,
java.util.List<Pair<JoinRelType,RexNode>> joinSpecs)
Combines the outer join conditions and join types from the left and right
join inputs.
|
private void |
JoinToMultiJoinRule.copyOuterJoinInfo(MultiJoin multiJoin,
java.util.List<Pair<JoinRelType,RexNode>> destJoinSpecs,
int adjustmentAmount,
java.util.List<RelDataTypeField> srcFields,
java.util.List<RelDataTypeField> destFields)
Copies outer join data from a source MultiJoin to a new set of arrays.
|
Constructor and Description |
---|
EquiJoin(RelOptCluster cluster,
RelTraitSet traits,
RelNode left,
RelNode right,
RexNode condition,
ImmutableIntList leftKeys,
ImmutableIntList rightKeys,
JoinRelType joinType,
java.util.Set<java.lang.String> variablesStopped)
Deprecated.
|
Constructor and Description |
---|
MultiJoin(RelOptCluster cluster,
java.util.List<RelNode> inputs,
RexNode joinFilter,
RelDataType rowType,
boolean isFullOuterJoin,
java.util.List<RexNode> outerJoinConditions,
java.util.List<JoinRelType> joinTypes,
java.util.List<ImmutableBitSet> projFields,
com.google.common.collect.ImmutableMap<java.lang.Integer,ImmutableIntList> joinFieldRefCountsMap,
RexNode postJoinFilter)
Constructs a MultiJoin.
|
Modifier and Type | Method and Description |
---|---|
JoinRelType |
SemiJoinType.toJoinType()
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
static SemiJoinType |
SemiJoinType.of(JoinRelType joinType)
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
static RelDataType |
SqlValidatorUtil.deriveJoinRowType(RelDataType leftType,
RelDataType rightType,
JoinRelType joinType,
RelDataTypeFactory typeFactory,
java.util.List<java.lang.String> fieldNameList,
java.util.List<RelDataTypeField> systemFieldList)
Derives the type of a join relational expression.
|
Modifier and Type | Method and Description |
---|---|
private static JoinRelType |
SqlToRelConverter.convertJoinType(JoinType joinType) |
Modifier and Type | Method and Description |
---|---|
protected RelNode |
SqlToRelConverter.createJoin(SqlToRelConverter.Blackboard bb,
RelNode leftRel,
RelNode rightRel,
RexNode joinCond,
JoinRelType joinType) |
RexNode |
SqlToRelConverter.Blackboard.register(RelNode rel,
JoinRelType joinType) |
RexNode |
SqlToRelConverter.Blackboard.register(RelNode rel,
JoinRelType joinType,
java.util.List<RexNode> leftKeys)
Registers a relational expression.
|
Modifier and Type | Method and Description |
---|---|
RelBuilder |
RelBuilder.join(JoinRelType joinType,
java.lang.Iterable<? extends RexNode> conditions)
Creates a
Join with multiple
conditions. |
RelBuilder |
RelBuilder.join(JoinRelType joinType,
RexNode condition) |
RelBuilder |
RelBuilder.join(JoinRelType joinType,
RexNode condition0,
RexNode... conditions)
Creates a
Join . |
RelBuilder |
RelBuilder.join(JoinRelType joinType,
RexNode condition,
java.util.Set<CorrelationId> variablesSet)
Creates a
Join with correlating
variables. |
RelBuilder |
RelBuilder.join(JoinRelType joinType,
java.lang.String... fieldNames)
Creates a
Join using USING syntax. |
Copyright © 2012–2019 The Apache Software Foundation. All rights reserved.