Class StringExpression
- java.lang.Object
-
- org.datanucleus.store.rdbms.sql.expression.SQLExpression
-
- org.datanucleus.store.rdbms.sql.expression.StringExpression
-
- Direct Known Subclasses:
AggregateStringExpression,CaseStringExpression,StringLiteral,StringSubqueryExpression
public class StringExpression extends SQLExpression
Representation of an expression with a string.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.datanucleus.store.rdbms.sql.expression.SQLExpression
SQLExpression.ColumnExpressionList
-
-
Field Summary
-
Fields inherited from class org.datanucleus.store.rdbms.sql.expression.SQLExpression
lowestOperator, mapping, parameterName, st, stmt, subExprs, table
-
-
Constructor Summary
Constructors Constructor Description StringExpression(org.datanucleus.store.query.expression.Expression.MonadicOperator op, SQLExpression expr1)Perform an operationStringExpression(SQLExpression expr1, org.datanucleus.store.query.expression.Expression.DyadicOperator op, SQLExpression expr2)Perform an operationStringExpression(SQLStatement stmt, JavaTypeMapping mapping, String functionName, List<SQLExpression> args)Generates statement as e.g.StringExpression(SQLStatement stmt, JavaTypeMapping mapping, String functionName, List<SQLExpression> args, List types)Generates statement as e.g.StringExpression(SQLStatement stmt, SQLTable table, JavaTypeMapping mapping)Constructor for an SQL expression for a (field) mapping in a specified table.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SQLExpressionadd(SQLExpression expr)Additive Operator.BooleanExpressioneq(SQLExpression expr)Equality operator (equals to)BooleanExpressionge(SQLExpression expr)Relational operator (greater than or equals)BooleanExpressiongt(SQLExpression expr)Relational operator (greater than)BooleanExpressionin(SQLExpression expr, boolean not)In expression.SQLExpressioninvoke(String methodName, List args)Invocation of a method on this expression.BooleanExpressionle(SQLExpression expr)Relational operator (lower than or equals)BooleanExpressionlt(SQLExpression expr)Relational operator (lower than)BooleanExpressionne(SQLExpression expr)Not equality operator (not equals to)-
Methods inherited from class org.datanucleus.store.rdbms.sql.expression.SQLExpression
and, bitAnd, bitOr, cast, com, distinct, div, encloseInParentheses, eor, getJavaTypeMapping, getLowestOperator, getNumberOfSubExpressions, getParameterName, getSQLStatement, getSQLTable, getSubExpression, ior, is, isParameter, mod, mul, neg, not, setJavaTypeMapping, sub, toSQLText, unDistinct
-
-
-
-
Constructor Detail
-
StringExpression
public StringExpression(SQLStatement stmt, SQLTable table, JavaTypeMapping mapping)
Constructor for an SQL expression for a (field) mapping in a specified table.- Parameters:
stmt- The statementtable- The table in the statementmapping- The mapping for the field
-
StringExpression
public StringExpression(org.datanucleus.store.query.expression.Expression.MonadicOperator op, SQLExpression expr1)Perform an operationop
on expressionexpr1
.- Parameters:
op- operatorexpr1- operand
-
StringExpression
public StringExpression(SQLExpression expr1, org.datanucleus.store.query.expression.Expression.DyadicOperator op, SQLExpression expr2)
Perform an operationop
betweenexpr1
andexpr2
.- Parameters:
expr1- the first expressionop- the operator between operandsexpr2- the second expression
-
StringExpression
public StringExpression(SQLStatement stmt, JavaTypeMapping mapping, String functionName, List<SQLExpression> args)
Generates statement as e.g. FUNCTION_NAME(arg[,argN]).- Parameters:
stmt- SQL Statementmapping- Mapping to usefunctionName- Name of the functionargs- ScalarExpression list
-
StringExpression
public StringExpression(SQLStatement stmt, JavaTypeMapping mapping, String functionName, List<SQLExpression> args, List types)
Generates statement as e.g. FUNCTION_NAME(arg AS type[,argN as typeN]).- Parameters:
stmt- SQL Statementmapping- Mapping to usefunctionName- Name of functionargs- ScalarExpression listtypes- String or ScalarExpression list
-
-
Method Detail
-
eq
public BooleanExpression eq(SQLExpression expr)
Description copied from class:SQLExpressionEquality operator (equals to)- Overrides:
eqin classSQLExpression- Parameters:
expr- the right-hand operand- Returns:
- The type of an equality expression is a boolean
-
ne
public BooleanExpression ne(SQLExpression expr)
Description copied from class:SQLExpressionNot equality operator (not equals to)- Overrides:
nein classSQLExpression- Parameters:
expr- the right-hand operand- Returns:
- The type of an equality expression is a boolean
-
lt
public BooleanExpression lt(SQLExpression expr)
Description copied from class:SQLExpressionRelational operator (lower than)- Overrides:
ltin classSQLExpression- Parameters:
expr- the right-hand operand- Returns:
- true if the value of the left-hand operand is less than the value of the right-hand operand, and otherwise is false.
-
le
public BooleanExpression le(SQLExpression expr)
Description copied from class:SQLExpressionRelational operator (lower than or equals)- Overrides:
lein classSQLExpression- Parameters:
expr- the right-hand operand- Returns:
- true if the value of the left-hand operand is less than or equal to the value of the right-hand operand, and otherwise is false.
-
gt
public BooleanExpression gt(SQLExpression expr)
Description copied from class:SQLExpressionRelational operator (greater than)- Overrides:
gtin classSQLExpression- Parameters:
expr- the right-hand operand- Returns:
- true if the value of the left-hand operand is greater than the value of the right-hand operand, and otherwise is false.
-
ge
public BooleanExpression ge(SQLExpression expr)
Description copied from class:SQLExpressionRelational operator (greater than or equals)- Overrides:
gein classSQLExpression- Parameters:
expr- the right-hand operand- Returns:
- true if the value of the left-hand operand is greater than or equal the value of the right-hand operand, and otherwise is false.
-
add
public SQLExpression add(SQLExpression expr)
Description copied from class:SQLExpressionAdditive Operator. The binary + operator performs addition when applied to two operands of numeric type, producing the sum of the operands. If the type of either operand of a + operator is String, then the operation is string concatenation.- Overrides:
addin classSQLExpression- Parameters:
expr- the right-hand operand- Returns:
- If one of the operands is String, the returned value is the string concatenation; The sum of two operands of numeric type. The left-hand operand is the minuend and the right-hand operand is the subtrahend;
-
in
public BooleanExpression in(SQLExpression expr, boolean not)
Description copied from class:SQLExpressionIn expression. Return true if this is contained byexpr- Overrides:
inin classSQLExpression- Parameters:
expr- the right-hand expressionnot- Whether we really want "not in"- Returns:
- true if the left-hand expression is contained by the right-hand expression. Otherwise the result is false.
-
invoke
public SQLExpression invoke(String methodName, List args)
Description copied from class:SQLExpressionInvocation of a method on this expression.- Overrides:
invokein classSQLExpression- Parameters:
methodName- name of the method to invokeargs- Args to this method (if any)- Returns:
- the converted value
-
-