public class ConditionIn extends Expression
| Constructor and Description |
|---|
ConditionIn(Database database,
Expression left,
ArrayList<Expression> values)
Create a new IN(..) condition.
|
| Modifier and Type | Method and Description |
|---|---|
void |
createIndexConditions(Session session,
TableFilter filter)
Create index conditions if possible and attach them to the table filter.
|
int |
getCost()
Estimate the cost to process the expression.
|
int |
getDisplaySize()
Get the display size of this expression.
|
long |
getPrecision()
Get the precision of this expression.
|
int |
getScale()
Get the scale of this expression.
|
String |
getSQL()
Get the SQL statement of this expression.
|
int |
getType()
Return the data type.
|
Value |
getValue(Session 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.
|
void |
mapColumns(ColumnResolver resolver,
int level)
Map the columns of the resolver to expression columns.
|
Expression |
optimize(Session 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(Session session)
Update an aggregate value.
|
addFilterConditions, getAlias, getBooleanValue, getColumnName, getExpressionColumns, getExpressionColumns, getNonAliasExpression, getNotIfPossible, getNullable, getSchemaName, getTableAlias, getTableName, isAutoIncrement, isConstant, isValueSet, isWildcard, toStringpublic ConditionIn(Database database, Expression left, ArrayList<Expression> values)
database - the databaseleft - the expression before INvalues - the value list (at least one element)public Value getValue(Session session)
ExpressiongetValue in class Expressionsession - the sessionpublic void mapColumns(ColumnResolver resolver, int level)
ExpressionmapColumns in class Expressionresolver - the column resolverlevel - the subquery nesting levelpublic Expression optimize(Session session)
Expressionoptimize in class Expressionsession - the sessionpublic void createIndexConditions(Session session, TableFilter filter)
ExpressioncreateIndexConditions in class Expressionsession - the sessionfilter - the table filterpublic void setEvaluatable(TableFilter tableFilter, boolean b)
ExpressionsetEvaluatable in class ExpressiontableFilter - the table filterb - true if the table filter can return valuepublic String getSQL()
ExpressiongetSQL in class Expressionpublic void updateAggregate(Session session)
ExpressionupdateAggregate in class Expressionsession - the sessionpublic boolean isEverything(ExpressionVisitor visitor)
ExpressionisEverything in class Expressionvisitor - the visitorpublic int getCost()
ExpressiongetCost in class Expressionpublic int getType()
ExpressiongetType in class Expressionpublic int getScale()
ExpressiongetScale in class Expressionpublic long getPrecision()
ExpressiongetPrecision in class Expressionpublic int getDisplaySize()
ExpressiongetDisplaySize in class ExpressionCopyright © 2012 JBoss by Red Hat. All Rights Reserved.