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
Representation of an expression with a string.
-
Nested Class Summary
Nested classes/interfaces inherited from class SQLExpression
SQLExpression.ColumnExpressionList -
Field Summary
Fields inherited from class SQLExpression
lowestOperator, mapping, parameterName, st, stmt, subExprs, table -
Constructor Summary
ConstructorsConstructorDescriptionStringExpression(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
Modifier and TypeMethodDescriptionadd(SQLExpression expr) Additive Operator.eq(SQLExpression expr) Equality operator (equals to)ge(SQLExpression expr) Relational operator (greater than or equals)gt(SQLExpression expr) Relational operator (greater than)in(SQLExpression expr, boolean not) In expression.invoke(String methodName, List<SQLExpression> args) Invocation of a method on this expression.le(SQLExpression expr) Relational operator (lower than or equals)lt(SQLExpression expr) Relational operator (lower than)ne(SQLExpression expr) Not equality operator (not equals to)Methods inherited from class 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 Details
-
StringExpression
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 Details
-
eq
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
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
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
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
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
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
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
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
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
-