| Modifier and Type | Field and Description |
|---|---|
| private Expression | |
| private Value | |
| private HashSet | |
| private final Query |
| Modifier and Type | Method and Description |
|---|---|
| public ArrayList | Returns: values in all rowsthe session session)Evaluates and returns all rows of the subquery. |
| public int | getCost()
Implements abstract org. Estimate the cost to process the expression. |
| public Query | |
| public TypeInfo | getType()
Implements abstract org. Implements org. Returns the data type. |
| public TypeInfo | getTypeIfStaticallyKnown(SessionLocal
the session session)Overrides org. Returns data type of this expression if it is statically known. |
| public StringBuilder | getUnenclosedSQL(StringBuilder
string builder builder, int formatting flags sqlFlags)Implements abstract org. Get the SQL statement of this expression. |
| public Value | getValue(SessionLocal
the session session)Implements abstract org. Return the resulting value for the current row. |
| public boolean | isConstant()
Overrides org. Check if this expression will always return the same value. |
| public boolean | isEverything(ExpressionVisitor
the visitor visitor)Implements abstract org. Check if this expression and all sub-expressions can fulfill a criteria. |
| public void | mapColumns(ColumnResolver
the column resolver resolver, int the subquery nesting level level, int current state for nesting checks, initial value is
state)MAP_INITIALImplements abstract org. Map the columns of the resolver to expression columns. |
| public Expression | optimize(SessionLocal
the session session)Implements abstract org. Try to optimize the expression. |
| private Value | |
| public void | setEvaluatable(TableFilter
the table filter tableFilter, boolean true if the table filter can return value b)Implements abstract org. Tell the expression columns whether the table filter can return values now. |
| private void | |
| public void | updateAggregate(SessionLocal
the session session, int select stage stage)Implements abstract org. Update an aggregate value. |
| expression | back to summary |
|---|---|
| private Expression expression | |
| nullValue | back to summary |
|---|---|
| private Value nullValue | |
| outerResolvers | back to summary |
|---|---|
| private HashSet<ColumnResolver> outerResolvers | |
| query | back to summary |
|---|---|
| private final Query query | |
| Subquery | back to summary |
|---|---|
| public Subquery(Query query) | |
| getAllRows | back to summary |
|---|---|
| public ArrayList Evaluates and returns all rows of the subquery.
| |
| getCost | back to summary |
|---|---|
| public int getCost() Implements abstract org. Doc from org. Estimate the cost to process the expression. Used when optimizing the query, to calculate the query plan with the lowest estimated cost.
| |
| getQuery | back to summary |
|---|---|
| public Query getQuery() | |
| getType | back to summary |
|---|---|
| public TypeInfo getType() Implements abstract org. Implements org. Doc from org. Returns the data type. The data type may be unknown before the optimization phase. | |
| getTypeIfStaticallyKnown | back to summary |
|---|---|
| public TypeInfo getTypeIfStaticallyKnown(SessionLocal session) Overrides org. Doc from org. Returns data type of this expression if it is statically known.
| |
| getUnenclosedSQL | back to summary |
|---|---|
| public StringBuilder getUnenclosedSQL(StringBuilder builder, int sqlFlags) Implements abstract org. Doc from org. Get the SQL statement of this expression. This may not always be the original SQL statement, especially after optimization. Enclosing '(' and ')' are never appended.
| |
| getValue | back to summary |
|---|---|
| public Value getValue(SessionLocal session) Implements abstract org. Doc from org. Return the resulting value for the current row.
| |
| isConstant | back to summary |
|---|---|
| public boolean isConstant() Overrides org. Doc from org. Check if this expression will always return the same value.
| |
| isEverything | back to summary |
|---|---|
| public boolean isEverything(ExpressionVisitor visitor) Implements abstract org. Doc from org. Check if this expression and all sub-expressions can fulfill a criteria. If any part returns false, the result is false.
| |
| mapColumns | back to summary |
|---|---|
| public void mapColumns(ColumnResolver resolver, int level, int state) Implements abstract org. Doc from org. Map the columns of the resolver to expression columns.
| |
| optimize | back to summary |
|---|---|
| public Expression optimize(SessionLocal session) Implements abstract org. Doc from org. Try to optimize the expression.
| |
| readRow | back to summary |
|---|---|
| private Value readRow(ResultInterface result) | |
| setEvaluatable | back to summary |
|---|---|
| public void setEvaluatable(TableFilter tableFilter, boolean b) Implements abstract org. Doc from org. Tell the expression columns whether the table filter can return values now. This is used when optimizing the query.
| |
| setType | back to summary |
|---|---|
| private void setType() | |
| updateAggregate | back to summary |
|---|---|
| public void updateAggregate(SessionLocal session, int stage) Implements abstract org. Doc from org. Update an aggregate value. This method is called at statement execution time. It is usually called once for each row, but if the expression is used multiple times (for example in the column list, and as part of the HAVING expression) it is called multiple times - the row counter needs to be used to make sure the internal state is only updated once.
| |