| Modifier and Type | Class and Description |
|---|---|
static interface |
PruneEmptyRules.IntersectEmptyPruneRuleConfig
Configuration for a rule that prunes an Intersect if any of its inputs
is empty.
|
static interface |
PruneEmptyRules.JoinLeftEmptyRuleConfig
Configuration for rule that prunes a join it its left input is
empty.
|
static interface |
PruneEmptyRules.JoinRightEmptyRuleConfig
Configuration for rule that prunes a join it its right input is
empty.
|
static interface |
PruneEmptyRules.MinusEmptyPruneRuleConfig
Configuration for a rule that prunes empty inputs from a Minus.
|
protected static class |
PruneEmptyRules.PruneEmptyRule
Abstract prune empty rule that implements SubstitutionRule interface.
|
static class |
PruneEmptyRules.RemoveEmptySingleRule
Planner rule that converts a single-rel (e.g.
|
static interface |
PruneEmptyRules.SortFetchZeroRuleConfig
Configuration for a rule that prunes a Sort if it has limit 0.
|
static interface |
PruneEmptyRules.UnionEmptyPruneRuleConfig
Configuration for a rule that prunes empty inputs from a Minus.
|
| Modifier and Type | Field and Description |
|---|---|
static RelOptRule |
AGGREGATE_INSTANCE
Rule that converts an
Aggregate
to empty if its child is empty. |
static RelOptRule |
FILTER_INSTANCE
Rule that converts a
LogicalFilter
to empty if its child is empty. |
static RelOptRule |
INTERSECT_INSTANCE
Rule that converts a
LogicalIntersect to
empty if any of its children are empty. |
static RelOptRule |
JOIN_LEFT_INSTANCE
Rule that converts a
Join
to empty if its left child is empty. |
static RelOptRule |
JOIN_RIGHT_INSTANCE
Rule that converts a
Join
to empty if its right child is empty. |
static RelOptRule |
MINUS_INSTANCE
Rule that removes empty children of a
LogicalMinus. |
static RelOptRule |
PROJECT_INSTANCE
Rule that converts a
LogicalProject
to empty if its child is empty. |
static RelOptRule |
SORT_FETCH_ZERO_INSTANCE
Rule that converts a
Sort
to empty if it has LIMIT 0. |
static RelOptRule |
SORT_INSTANCE
Rule that converts a
Sort
to empty if its child is empty. |
static RelOptRule |
UNION_INSTANCE
Rule that removes empty children of a
LogicalUnion. |
| Constructor and Description |
|---|
PruneEmptyRules() |
public static final RelOptRule UNION_INSTANCE
LogicalUnion.
Examples:
public static final RelOptRule MINUS_INSTANCE
LogicalMinus.
Examples:
public static final RelOptRule INTERSECT_INSTANCE
LogicalIntersect to
empty if any of its children are empty.
Examples:
public static final RelOptRule PROJECT_INSTANCE
LogicalProject
to empty if its child is empty.
Examples:
public static final RelOptRule FILTER_INSTANCE
LogicalFilter
to empty if its child is empty.
Examples:
public static final RelOptRule SORT_INSTANCE
public static final RelOptRule SORT_FETCH_ZERO_INSTANCE
public static final RelOptRule AGGREGATE_INSTANCE
Aggregate
to empty if its child is empty.
Examples:
Aggregate(key: [1, 3], Empty) → Empty
Aggregate(key: [], Empty) is unchanged, because an aggregate
without a GROUP BY key always returns 1 row, even over empty input
AggregateValuesRulepublic static final RelOptRule JOIN_LEFT_INSTANCE
Join
to empty if its left child is empty.
Examples:
public static final RelOptRule JOIN_RIGHT_INSTANCE
Join
to empty if its right child is empty.
Examples:
Copyright © 2012-2022 Apache Software Foundation. All Rights Reserved.