Top Description Fields Constructors Methods
org.h2.expression

public final Class ConcatenationOperation

extends OperationN
Class Inheritance
Imports
java.util.Arrays, org.h2.engine.SessionLocal, org.h2.expression.function.CastSpecification, .ConcatFunction, org.h2.value.DataType, .TypeInfo, .Value, .ValueArray, .ValueNull, .ValueVarbinary, .ValueVarchar

Character string concatenation as in 'Hello' || 'World', binary string concatenation as in X'01' || X'AB' or an array concatenation as in ARRAY[1, 2] || 3.

Field Summary

Inherited from org.h2.expression.OperationN:
argsargsCounttype

Constructor Summary

AccessConstructor and Description
public
public

Method Summary

Modifier and TypeMethod and Description
private void
private long
getPrecision(int i)

public StringBuilder
getUnenclosedSQL(StringBuilder
string builder
builder
,
int
formatting flags
sqlFlags
)

Implements abstract org.h2.expression.Expression.getUnenclosedSQL.

Get the SQL statement of this expression.

public Value
getValue(SessionLocal
the session
session
)

Implements abstract org.h2.expression.Expression.getValue.

Return the resulting value for the current row.

private Value
private Value
getValue(SessionLocal session, int l)

private void
private static boolean
public boolean
needParentheses()

Overrides org.h2.expression.Expression.needParentheses.

Returns whether this expressions needs to be wrapped in parentheses when it is used as an argument of other expressions.

public Expression
optimize(SessionLocal
the session
session
)

Implements abstract org.h2.expression.Expression.optimize.

Try to optimize the expression.

Inherited from org.h2.expression.OperationN:
addParameterdoneWithParametersgetCostgetSubexpressiongetSubexpressionCountgetTypeisEverythingmapColumnsoptimizeArgumentssetEvaluatableupdateAggregate

Constructor Detail

ConcatenationOperationback to summary
public ConcatenationOperation()
ConcatenationOperationback to summary
public ConcatenationOperation(Expression op1, Expression op2)

Method Detail

determineTypeback to summary
private void determineType(SessionLocal session)
getPrecisionback to summary
private long getPrecision(int i)
getUnenclosedSQLback to summary
public StringBuilder getUnenclosedSQL(StringBuilder builder, int sqlFlags)

Implements abstract org.h2.expression.Expression.getUnenclosedSQL.

Doc from org.h2.expression.Expression.getUnenclosedSQL.

Get the SQL statement of this expression. This may not always be the original SQL statement, especially after optimization. Enclosing '(' and ')' are never appended.

Parameters
builder:StringBuilder

string builder

sqlFlags:int

formatting flags

Returns:StringBuilder

the specified string builder

Annotations
@Override
getValueback to summary
public Value getValue(SessionLocal session)

Implements abstract org.h2.expression.Expression.getValue.

Doc from org.h2.expression.Expression.getValue.

Return the resulting value for the current row.

Parameters
session:SessionLocal

the session

Returns:Value

the result

Annotations
@Override
getValueback to summary
private Value getValue(SessionLocal session, Value l, Value r)
getValueback to summary
private Value getValue(SessionLocal session, int l)
inlineArgumentsback to summary
private void inlineArguments()
isEmptyback to summary
private static boolean isEmpty(Value v)
needParenthesesback to summary
public boolean needParentheses()

Overrides org.h2.expression.Expression.needParentheses.

Doc from org.h2.expression.Expression.needParentheses.

Returns whether this expressions needs to be wrapped in parentheses when it is used as an argument of other expressions.

Returns:boolean

true if it is

Annotations
@Override
optimizeback to summary
public Expression optimize(SessionLocal session)

Implements abstract org.h2.expression.Expression.optimize.

Doc from org.h2.expression.Expression.optimize.

Try to optimize the expression.

Parameters
session:SessionLocal

the session

Returns:Expression

the optimized expression

Annotations
@Override