| Modifier and Type | Class and Description |
|---|---|
static class |
PruneEmptyRules.RemoveEmptySingleRule
Planner rule that converts a single-rel (e.g.
|
| 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:
private static boolean isEmpty(RelNode node)
Copyright © 2012–2018 The Apache Software Foundation. All rights reserved.