Package org.h2.expression.function
Class CurrentGeneralValueSpecification
- java.lang.Object
-
- org.h2.expression.Expression
-
- org.h2.expression.Operation0
-
- org.h2.expression.function.CurrentGeneralValueSpecification
-
- All Implemented Interfaces:
NamedExpression
,HasSQL
,Typed
public final class CurrentGeneralValueSpecification extends Operation0 implements NamedExpression
Simple general value specifications.
-
-
Field Summary
Fields Modifier and Type Field Description static int
CURRENT_CATALOG
The "CURRENT_CATALOG" general value specification.static int
CURRENT_PATH
The "CURRENT_PATH" general value specification.static int
CURRENT_ROLE
The function "CURRENT_ROLE" general value specification.static int
CURRENT_SCHEMA
The function "CURRENT_SCHEMA" general value specification.static int
CURRENT_USER
The function "CURRENT_USER" general value specification.private static java.lang.String[]
NAMES
static int
SESSION_USER
The function "SESSION_USER" general value specification.private int
specification
static int
SYSTEM_USER
The function "SYSTEM_USER" general value specification.-
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 CurrentGeneralValueSpecification(int specification)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
getCost()
Estimate the cost to process the expression.java.lang.String
getName()
Get the name.TypeInfo
getType()
Returns the data type.java.lang.StringBuilder
getUnenclosedSQL(java.lang.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.-
Methods inherited from class org.h2.expression.Operation0
mapColumns, optimize, 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, getSubexpression, getSubexpressionCount, 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
-
CURRENT_CATALOG
public static final int CURRENT_CATALOG
The "CURRENT_CATALOG" general value specification.- See Also:
- Constant Field Values
-
CURRENT_PATH
public static final int CURRENT_PATH
The "CURRENT_PATH" general value specification.- See Also:
- Constant Field Values
-
CURRENT_ROLE
public static final int CURRENT_ROLE
The function "CURRENT_ROLE" general value specification.- See Also:
- Constant Field Values
-
CURRENT_SCHEMA
public static final int CURRENT_SCHEMA
The function "CURRENT_SCHEMA" general value specification.- See Also:
- Constant Field Values
-
CURRENT_USER
public static final int CURRENT_USER
The function "CURRENT_USER" general value specification.- See Also:
- Constant Field Values
-
SESSION_USER
public static final int SESSION_USER
The function "SESSION_USER" general value specification.- See Also:
- Constant Field Values
-
SYSTEM_USER
public static final int SYSTEM_USER
The function "SYSTEM_USER" general value specification.- See Also:
- Constant Field Values
-
NAMES
private static final java.lang.String[] NAMES
-
specification
private final int specification
-
-
Method Detail
-
getValue
public Value getValue(SessionLocal session)
Description copied from class:Expression
Return the resulting value for the current row.- Specified by:
getValue
in classExpression
- Parameters:
session
- the session- Returns:
- the result
-
getUnenclosedSQL
public java.lang.StringBuilder getUnenclosedSQL(java.lang.StringBuilder builder, int sqlFlags)
Description copied from class:Expression
Get the SQL statement of this expression. This may not always be the original SQL statement, especially after optimization. Enclosing '(' and ')' are never appended.- Specified by:
getUnenclosedSQL
in classExpression
- Parameters:
builder
- string buildersqlFlags
- formatting flags- Returns:
- the specified string builder
-
isEverything
public boolean isEverything(ExpressionVisitor visitor)
Description copied from class:Expression
Check if this expression and all sub-expressions can fulfill a criteria. If any part returns false, the result is false.- Specified by:
isEverything
in classExpression
- Parameters:
visitor
- the visitor- Returns:
- if the criteria can be fulfilled
-
getType
public TypeInfo getType()
Description copied from class:Expression
Returns the data type. The data type may be unknown before the optimization phase.- Specified by:
getType
in interfaceTyped
- Specified by:
getType
in classExpression
- Returns:
- the data type
-
getCost
public int getCost()
Description copied from class:Expression
Estimate the cost to process the expression. Used when optimizing the query, to calculate the query plan with the lowest estimated cost.- Specified by:
getCost
in classExpression
- Returns:
- the estimated cost
-
getName
public java.lang.String getName()
Description copied from interface:NamedExpression
Get the name.- Specified by:
getName
in interfaceNamedExpression
- Returns:
- the name in uppercase
-
-