Package org.h2.expression.function
Class RandFunction
- java.lang.Object
-
- org.h2.expression.Expression
-
- org.h2.expression.function.Function0_1
-
- org.h2.expression.function.RandFunction
-
- All Implemented Interfaces:
NamedExpression,HasSQL,Typed
public final class RandFunction extends Function0_1
A RAND, SECURE_RAND, or RANDOM_UUID function.
-
-
Field Summary
Fields Modifier and Type Field Description private intfunctionprivate static java.lang.String[]NAMESstatic intRANDRAND() (non-standard).static intRANDOM_UUIDRANDOM_UUID() (non-standard).static intSECURE_RANDSECURE_RAND() (non-standard).-
Fields inherited from class org.h2.expression.function.Function0_1
arg, type
-
Fields inherited from class org.h2.expression.Expression
AUTO_PARENTHESES, MAP_IN_AGGREGATE, MAP_IN_WINDOW, MAP_INITIAL, WITH_PARENTHESES, WITHOUT_PARENTHESES
-
Fields inherited from interface org.h2.util.HasSQL
ADD_PLAN_INFORMATION, DEFAULT_SQL_FLAGS, NO_CASTS, QUOTE_ONLY_WHEN_REQUIRED, REPLACE_LOBS_FOR_TRACE, TRACE_SQL_FLAGS
-
-
Constructor Summary
Constructors Constructor Description RandFunction(Expression arg, int function)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetName()Get the name.ValuegetValue(SessionLocal session)Return the resulting value for the current row.booleanisEverything(ExpressionVisitor visitor)Check if this expression and all sub-expressions can fulfill a criteria.Expressionoptimize(SessionLocal session)Try to optimize the expression.-
Methods inherited from class org.h2.expression.function.Function0_1
getCost, getSubexpression, getSubexpressionCount, getType, getUnenclosedSQL, mapColumns, setEvaluatable, updateAggregate
-
Methods inherited from class org.h2.expression.Expression
addFilterConditions, createIndexConditions, getAlias, getBooleanValue, getColumnName, getColumnNameForView, getEnclosedSQL, getNonAliasExpression, getNotIfPossible, getNullable, getSchemaName, getSQL, getSQL, getSQL, getSQL, getTableAlias, getTableName, getWhenSQL, getWhenValue, isConstant, isIdentity, isNullConstant, isValueSet, isWhenConditionOperand, needParentheses, optimizeCondition, toString, writeExpressions, writeExpressions
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.h2.util.HasSQL
getTraceSQL
-
-
-
-
Field Detail
-
RAND
public static final int RAND
RAND() (non-standard).- See Also:
- Constant Field Values
-
SECURE_RAND
public static final int SECURE_RAND
SECURE_RAND() (non-standard).- See Also:
- Constant Field Values
-
RANDOM_UUID
public static final int RANDOM_UUID
RANDOM_UUID() (non-standard).- See Also:
- Constant Field Values
-
NAMES
private static final java.lang.String[] NAMES
-
function
private final int function
-
-
Constructor Detail
-
RandFunction
public RandFunction(Expression arg, int function)
-
-
Method Detail
-
getValue
public Value getValue(SessionLocal session)
Description copied from class:ExpressionReturn the resulting value for the current row.- Specified by:
getValuein classExpression- Parameters:
session- the session- Returns:
- the result
-
optimize
public Expression optimize(SessionLocal session)
Description copied from class:ExpressionTry to optimize the expression.- Specified by:
optimizein classExpression- Parameters:
session- the session- Returns:
- the optimized expression
-
isEverything
public boolean isEverything(ExpressionVisitor visitor)
Description copied from class:ExpressionCheck if this expression and all sub-expressions can fulfill a criteria. If any part returns false, the result is false.- Overrides:
isEverythingin classFunction0_1- Parameters:
visitor- the visitor- Returns:
- if the criteria can be fulfilled
-
getName
public java.lang.String getName()
Description copied from interface:NamedExpressionGet the name.- Returns:
- the name in uppercase
-
-