Query¶
Query
is a Statement.
Creating Instance¶
Query
takes the following to be created:
-
NodeLocation
-
Select
-
Relation
-
WindowExpression
-
Expression
-
GroupBy
-
PartitionBy
-
Expression
-
RefinementInfo
- pullQuery
- Limit
Query
is created when:
EngineExecutor
is requested to sourceTablePlanStatementRewriter.Rewriter
is requested tovisitQuery
AstBuilder.Visitor
is requested to visitQuery
pullQuery Flag¶
Query
is given a pullQuery
flag when created (which is most importantly when AstBuilder.Visitor
is requested to visitQuery).
AstBuilder.Visitor
turns the pullQuery
flag on (true
) when the Query
has no EMIT
clause (and the buildingPersistentQuery internal flag is off).
isPullQuery¶
boolean isPullQuery()
isPullQuery
is used when:
Analyzer.Visitor
is requested to visitQueryQueryAnalyzer
is requested to analyzeEngineExecutor
is requested to executeTablePullQueryStatementRewriter.Rewriter
is requested tovisitQuery
SqlFormatter.Formatter
is requested tovisitQuery
QueryExecutor
is requested to handleQueryScalablePushUtil
is requested to isScalablePushQuery
accept¶
R accept(
AstVisitor<R, C> visitor,
C context)
accept
requests the given AstVisitor to visit a Query.
accept
is part of the AstNode abstraction.