Class NumericExpression
java.lang.Object
org.datanucleus.store.rdbms.sql.expression.SQLExpression
org.datanucleus.store.rdbms.sql.expression.NumericExpression
- Direct Known Subclasses:
AggregateNumericExpression
,ByteExpression
,ByteLiteral
,CaseNumericExpression
,FloatingPointLiteral
,IntegerLiteral
,NumericSubqueryExpression
Representation of a Numeric expression in an SQL statement.
-
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
ConstructorsConstructorDescriptionNumericExpression
(org.datanucleus.store.query.expression.Expression.MonadicOperator op, SQLExpression expr1) Perform an operationNumericExpression
(SQLExpression expr1, org.datanucleus.store.query.expression.Expression.DyadicOperator op, SQLExpression expr2) Perform an operationNumericExpression
(SQLStatement stmt, JavaTypeMapping mapping, String sql) Constructor for a numeric expression for the specified mapping using the specified SQL text.NumericExpression
(SQLStatement stmt, JavaTypeMapping mapping, String functionName, List<SQLExpression> args) Generates statement as "FUNCTION_NAME(arg [,argN])".NumericExpression
(SQLStatement stmt, JavaTypeMapping mapping, String functionName, List<SQLExpression> args, List types) Generates statement as "FUNCTION_NAME(arg [AS type] [,argN [AS typeN]])".NumericExpression
(SQLStatement stmt, SQLTable table, JavaTypeMapping mapping) Constructor for a numeric expression for the mapping in the specified table. -
Method Summary
Modifier and TypeMethodDescriptionadd
(SQLExpression expr) Additive Operator.bitAnd
(SQLExpression expr) BITWISE AND operation.bitOr
(SQLExpression expr) BITWISE OR operation.com()
Bitwise Complement Operatordiv
(SQLExpression expr) Division 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.le
(SQLExpression expr) Relational operator (lower than or equals)lt
(SQLExpression expr) Relational operator (lower than)mod
(SQLExpression expr) Method to return a modulus expression.mul
(SQLExpression expr) Multiplication Operatorne
(SQLExpression expr) Not equality operator (not equals to)neg()
Unary Minus Operatorsub
(SQLExpression expr) Additive Operator.Methods inherited from class org.datanucleus.store.rdbms.sql.expression.SQLExpression
and, cast, distinct, encloseInParentheses, eor, getJavaTypeMapping, getLowestOperator, getNumberOfSubExpressions, getParameterName, getSQLStatement, getSQLTable, getSubExpression, invoke, ior, is, isParameter, not, setJavaTypeMapping, toSQLText, unDistinct
-
Constructor Details
-
NumericExpression
Constructor for a numeric expression for the specified mapping using the specified SQL text.- Parameters:
stmt
- The statementmapping
- the mapping associated to this expressionsql
- The SQL text that will return a numeric
-
NumericExpression
Constructor for a numeric expression for the mapping in the specified table.- Parameters:
stmt
- the SQLStatementtable
- the table where this expression refers tomapping
- the mapping associated to this expression
-
NumericExpression
public NumericExpression(org.datanucleus.store.query.expression.Expression.MonadicOperator op, SQLExpression expr1) Perform an operationop
on expressionexpr1
.- Parameters:
op
- operatorexpr1
- operand
-
NumericExpression
public NumericExpression(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
-
NumericExpression
public NumericExpression(SQLStatement stmt, JavaTypeMapping mapping, String functionName, List<SQLExpression> args) Generates statement as "FUNCTION_NAME(arg [,argN])".- Parameters:
stmt
- The statementmapping
- Mapping to usefunctionName
- Name of functionargs
- SQLExpression list
-
NumericExpression
public NumericExpression(SQLStatement stmt, JavaTypeMapping mapping, String functionName, List<SQLExpression> args, List types) Generates statement as "FUNCTION_NAME(arg [AS type] [,argN [AS typeN]])".- Parameters:
stmt
- The statementmapping
- Mapping to usefunctionName
- Name of functionargs
- SQLExpression listtypes
- Optional String/SQLExpression list of types for the args
-
-
Method Details
-
eq
Description copied from class:SQLExpression
Equality operator (equals to)- Overrides:
eq
in classSQLExpression
- Parameters:
expr
- the right-hand operand- Returns:
- The type of an equality expression is a boolean
-
ne
Description copied from class:SQLExpression
Not equality operator (not equals to)- Overrides:
ne
in classSQLExpression
- Parameters:
expr
- the right-hand operand- Returns:
- The type of an equality expression is a boolean
-
lt
Description copied from class:SQLExpression
Relational operator (lower than)- Overrides:
lt
in 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:SQLExpression
Relational operator (lower than or equals)- Overrides:
le
in 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:SQLExpression
Relational operator (greater than)- Overrides:
gt
in 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:SQLExpression
Relational operator (greater than or equals)- Overrides:
ge
in 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.
-
in
Description copied from class:SQLExpression
In expression. Return true if this is contained byexpr
- Overrides:
in
in 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.
-
add
Description copied from class:SQLExpression
Additive 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:
add
in 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;
-
sub
Description copied from class:SQLExpression
Additive Operator. The binary - operator subtracts right-hand operand from left-hand operand.- Overrides:
sub
in classSQLExpression
- Parameters:
expr
- the right-hand operand- Returns:
- The binary - operator performs subtraction when applied to two operands of numeric type producing the difference of its operands; the left-hand operand is the minuend and the right-hand operand is the subtrahend.
-
mul
Description copied from class:SQLExpression
Multiplication Operator- Overrides:
mul
in classSQLExpression
- Parameters:
expr
- the right-hand operator- Returns:
- The binary * operator performs multiplication, producing the product of its operands.
-
div
Description copied from class:SQLExpression
Division Operator. The left-hand operand is the dividend and the right-hand operand is the divisor.- Overrides:
div
in classSQLExpression
- Parameters:
expr
- the right-hand operator- Returns:
- The binary / operator performs division, producing the quotient of its operands
-
mod
Method to return a modulus expression.- Overrides:
mod
in classSQLExpression
- Parameters:
expr
- The expression to modulus against- Returns:
- The modulus expression
-
neg
Description copied from class:SQLExpression
Unary Minus Operator- Overrides:
neg
in classSQLExpression
- Returns:
- the type of the unary minus expression is the promoted type of the operand.
-
com
Description copied from class:SQLExpression
Bitwise Complement Operator- Overrides:
com
in classSQLExpression
- Returns:
- the type of the unary bitwise complement expression is the promoted type of the operand.
-
bitAnd
Description copied from class:SQLExpression
BITWISE AND operation.- Overrides:
bitAnd
in classSQLExpression
- Parameters:
expr
- expression representing the bitset- Returns:
- the bitwise AND expression
-
bitOr
Description copied from class:SQLExpression
BITWISE OR operation.- Overrides:
bitOr
in classSQLExpression
- Parameters:
expr
- expression representing the bitset- Returns:
- the bitwise OR expression
-