public class JavaFunction extends Expression implements FunctionCall
| 构造器和说明 |
|---|
JavaFunction(FunctionAlias functionAlias,
Expression[] args) |
| 限定符和类型 | 方法和说明 |
|---|---|
Expression[] |
getArgs()
Get the function arguments.
|
int |
getCost()
Estimate the cost to process the expression.
|
int |
getDisplaySize()
Get the display size of this expression.
|
Expression[] |
getExpressionColumns(Session session)
If this expression consists of column expressions it should return them.
|
String |
getName()
Get the name of the function.
|
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.
|
ValueResultSet |
getValueForColumnList(Session session,
Expression[] argList)
Get an empty result set with the column names set.
|
boolean |
isBufferResultSetToLocalTemp()
Should the return value ResultSet be buffered in a local temporary file?
|
boolean |
isDeterministic()
Whether the function always returns the same result for the same
parameters.
|
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, createIndexConditions, getAlias, getBooleanValue, getColumnName, getExpressionColumns, getNonAliasExpression, getNotIfPossible, getNullable, getSchemaName, getTableAlias, getTableName, isAutoIncrement, isConstant, isValueSet, isWildcard, toStringpublic JavaFunction(FunctionAlias functionAlias, Expression[] args)
public Value getValue(Session session)
ExpressiongetValue 在类中 Expressionsession - the sessionpublic int getType()
ExpressiongetType 在接口中 FunctionCallgetType 在类中 Expressionpublic void mapColumns(ColumnResolver resolver, int level)
ExpressionmapColumns 在类中 Expressionresolver - the column resolverlevel - the subquery nesting levelpublic Expression optimize(Session session)
Expressionoptimize 在接口中 FunctionCalloptimize 在类中 Expressionsession - the sessionpublic void setEvaluatable(TableFilter tableFilter, boolean b)
ExpressionsetEvaluatable 在类中 ExpressiontableFilter - the table filterb - true if the table filter can return valuepublic int getScale()
ExpressiongetScale 在类中 Expressionpublic long getPrecision()
ExpressiongetPrecision 在类中 Expressionpublic int getDisplaySize()
ExpressiongetDisplaySize 在类中 Expressionpublic String getSQL()
ExpressiongetSQL 在接口中 FunctionCallgetSQL 在类中 Expressionpublic void updateAggregate(Session session)
ExpressionupdateAggregate 在类中 Expressionsession - the sessionpublic String getName()
FunctionCallgetName 在接口中 FunctionCallpublic ValueResultSet getValueForColumnList(Session session, Expression[] argList)
FunctionCallgetValueForColumnList 在接口中 FunctionCallsession - the sessionargList - the argument list (some arguments may be null)public Expression[] getArgs()
FunctionCallgetArgs 在接口中 FunctionCallpublic boolean isEverything(ExpressionVisitor visitor)
ExpressionisEverything 在类中 Expressionvisitor - the visitorpublic int getCost()
ExpressiongetCost 在类中 Expressionpublic boolean isDeterministic()
FunctionCallisDeterministic 在接口中 FunctionCallpublic Expression[] getExpressionColumns(Session session)
ExpressiongetExpressionColumns 在类中 Expressionsession - the sessionpublic boolean isBufferResultSetToLocalTemp()
FunctionCallisBufferResultSetToLocalTemp 在接口中 FunctionCallCopyright © 2017. All rights reserved.