@Internal public class PushProjectIntoTableSourceScanRule extends org.apache.calcite.plan.RelRule<PushProjectIntoTableSourceScanRule.Config>
LogicalProject into a LogicalTableScan.
If the source implements SupportsProjectionPushDown this rule pushes the projection of
physical columns into the source.
If the source implements SupportsReadingMetadata this rule also pushes projected
metadata into the source. For sources implementing SupportsReadingMetadata but not SupportsProjectionPushDown this is only done if SupportsReadingMetadata.supportsMetadataProjection() returns true. This is important for
some sources which would not be re-usable if different instances (due to different projected
metadata) of the source were used together.
| 限定符和类型 | 类和说明 |
|---|---|
static interface |
PushProjectIntoTableSourceScanRule.Config
Configuration for
PushProjectIntoTableSourceScanRule. |
org.apache.calcite.plan.RelRule.Done, org.apache.calcite.plan.RelRule.MatchHandler<R extends org.apache.calcite.plan.RelOptRule>, org.apache.calcite.plan.RelRule.OperandBuilder, org.apache.calcite.plan.RelRule.OperandDetailBuilder<R extends org.apache.calcite.rel.RelNode>, org.apache.calcite.plan.RelRule.OperandTransform| 限定符和类型 | 字段和说明 |
|---|---|
static org.apache.calcite.plan.RelOptRule |
INSTANCE |
| 构造器和说明 |
|---|
PushProjectIntoTableSourceScanRule(PushProjectIntoTableSourceScanRule.Config config) |
| 限定符和类型 | 方法和说明 |
|---|---|
boolean |
matches(org.apache.calcite.plan.RelOptRuleCall call) |
void |
onMatch(org.apache.calcite.plan.RelOptRuleCall call) |
public PushProjectIntoTableSourceScanRule(PushProjectIntoTableSourceScanRule.Config config)
Copyright © 2014–2022 The Apache Software Foundation. All rights reserved.