public final class Alias extends Expression
AUTO_PARENTHESES, MAP_IN_AGGREGATE, MAP_IN_WINDOW, MAP_INITIAL, WITH_PARENTHESES, WITHOUT_PARENTHESESADD_PLAN_INFORMATION, DEFAULT_SQL_FLAGS, NO_CASTS, QUOTE_ONLY_WHEN_REQUIRED, REPLACE_LOBS_FOR_TRACE, TRACE_SQL_FLAGS| 构造器和说明 |
|---|
Alias(Expression expression,
String alias,
boolean aliasColumnName) |
| 限定符和类型 | 方法和说明 |
|---|---|
String |
getAlias(SessionLocal session,
int columnIndex)
Get the alias name of a column or SQL expression
if it is not an aliased expression.
|
String |
getColumnName(SessionLocal session,
int columnIndex)
Get the column name or alias name of this expression.
|
String |
getColumnNameForView(SessionLocal session,
int columnIndex)
Get the column name of this expression for a view.
|
int |
getCost()
Estimate the cost to process the expression.
|
Expression |
getNonAliasExpression()
Returns the main expression, skipping aliases.
|
int |
getNullable()
Check whether this expression is a column and can store NULL.
|
String |
getSchemaName()
Get the schema name, or null
|
String |
getTableName()
Get the table name, or null
|
TypeInfo |
getType()
Returns the data type.
|
StringBuilder |
getUnenclosedSQL(StringBuilder builder,
int sqlFlags)
Get the SQL statement of this expression.
|
Value |
getValue(SessionLocal session)
Return the resulting value for the current row.
|
boolean |
isEverything(ExpressionVisitor visitor)
Check if this expression and all sub-expressions can fulfill a criteria.
|
boolean |
isIdentity()
Check if this is an identity column.
|
void |
mapColumns(ColumnResolver resolver,
int level,
int state)
Map the columns of the resolver to expression columns.
|
Expression |
optimize(SessionLocal session)
Try to optimize the expression.
|
void |
setEvaluatable(TableFilter tableFilter,
boolean b)
Tell the expression columns whether the table filter can return values
now.
|
void |
updateAggregate(SessionLocal session,
int stage)
Update an aggregate value.
|
addFilterConditions, createIndexConditions, getBooleanValue, getEnclosedSQL, getNotIfPossible, getSQL, getSQL, getSQL, getSQL, getSubexpression, getSubexpressionCount, getTableAlias, getWhenSQL, getWhenValue, isConstant, isNullConstant, isValueSet, isWhenConditionOperand, needParentheses, optimizeCondition, toString, writeExpressions, writeExpressionsclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetTraceSQLpublic Alias(Expression expression, String alias, boolean aliasColumnName)
public Expression getNonAliasExpression()
ExpressiongetNonAliasExpression 在类中 Expressionpublic Value getValue(SessionLocal session)
ExpressiongetValue 在类中 Expressionsession - the sessionpublic TypeInfo getType()
ExpressiongetType 在接口中 TypedgetType 在类中 Expressionpublic void mapColumns(ColumnResolver resolver, int level, int state)
ExpressionmapColumns 在类中 Expressionresolver - the column resolverlevel - the subquery nesting levelstate - current state for nesting checks, initial value is
Expression.MAP_INITIALpublic Expression optimize(SessionLocal session)
Expressionoptimize 在类中 Expressionsession - the sessionpublic void setEvaluatable(TableFilter tableFilter, boolean b)
ExpressionsetEvaluatable 在类中 ExpressiontableFilter - the table filterb - true if the table filter can return valuepublic boolean isIdentity()
ExpressionisIdentity 在类中 Expressionpublic StringBuilder getUnenclosedSQL(StringBuilder builder, int sqlFlags)
ExpressiongetUnenclosedSQL 在类中 Expressionbuilder - string buildersqlFlags - formatting flagspublic void updateAggregate(SessionLocal session, int stage)
ExpressionupdateAggregate 在类中 Expressionsession - the sessionstage - select stagepublic String getAlias(SessionLocal session, int columnIndex)
ExpressiongetAlias 在类中 Expressionsession - the sessioncolumnIndex - 0-based column indexpublic String getColumnNameForView(SessionLocal session, int columnIndex)
ExpressiongetColumnNameForView 在类中 Expressionsession - the sessioncolumnIndex - 0-based column indexpublic int getNullable()
ExpressiongetNullable 在类中 Expressionpublic boolean isEverything(ExpressionVisitor visitor)
ExpressionisEverything 在类中 Expressionvisitor - the visitorpublic int getCost()
ExpressiongetCost 在类中 Expressionpublic String getSchemaName()
ExpressiongetSchemaName 在类中 Expressionpublic String getTableName()
ExpressiongetTableName 在类中 Expressionpublic String getColumnName(SessionLocal session, int columnIndex)
ExpressiongetColumnName 在类中 Expressionsession - the sessioncolumnIndex - 0-based column indexCopyright © 2022. All rights reserved.