ProjectNode¶
ProjectNode is an extension of the SingleSourcePlanNode abstraction for project nodes with select expressions (for SchemaKStream.select when building a SchemaKStream).
Contract¶
Select Expressions¶
List<SelectExpression> getSelectExpressions()
Used when:
ProjectNodeis requested to buildStreamProjectOperatoris requested toopenandcreateRowForSelectStar
Implementations¶
FinalProjectNodePreJoinProjectNode- QueryProjectNode
Creating Instance¶
ProjectNode takes the following to be created:
-
PlanNodeId - Source PlanNode
Abstract Class
ProjectNode is an abstract class and cannot be created directly. It is created indirectly for the concrete ProjectNodes.
Building SchemaKStream¶
SchemaKStream<?> buildStream(
PlanBuildContext buildContext)
buildStream is part of the PlanNode abstraction.
buildStream requests the source PlanNode to build a SchemaKStream.
In the end, buildStream requests the SchemaKStream to select.