Class BooleanExpression
java.lang.Object
org.datanucleus.store.rdbms.sql.expression.SQLExpression
org.datanucleus.store.rdbms.sql.expression.BooleanExpression
- Direct Known Subclasses:
BooleanLiteral
,BooleanSubqueryExpression
,CaseBooleanExpression
,InExpression
Representation of a Boolean expression in a Query.
Can be represented in one of the following ways in the datastore
- As String-based, so stored as "Y", "N"
- As numeric-based, so stored as 1, 0
- As boolean-based, so stored as true, false
-
Nested Class Summary
Nested classes/interfaces inherited from class org.datanucleus.store.rdbms.sql.expression.SQLExpression
SQLExpression.ColumnExpressionList
-
Field Summary
FieldsFields inherited from class org.datanucleus.store.rdbms.sql.expression.SQLExpression
lowestOperator, mapping, parameterName, st, stmt, subExprs, table
-
Constructor Summary
ConstructorsConstructorDescriptionBooleanExpression
(org.datanucleus.store.query.expression.Expression.MonadicOperator op, SQLExpression expr1) Perform an operationBooleanExpression
(SQLExpression expr1, org.datanucleus.store.query.expression.Expression.DyadicOperator op, SQLExpression expr2) Perform an operationBooleanExpression
(SQLStatement stmt, JavaTypeMapping mapping) Constructor for a boolean expression for the specified mapping of the table.BooleanExpression
(SQLStatement stmt, JavaTypeMapping mapping, String sql) Constructor for a boolean expression for the specified mapping using the specified SQL text.BooleanExpression
(SQLStatement stmt, JavaTypeMapping mapping, String functionName, List<SQLExpression> args) Generates statement as "FUNCTION_NAME(arg [,argN])" such as STARTS_WITH(arg1, arg2).BooleanExpression
(SQLStatement stmt, SQLTable table, JavaTypeMapping mapping) Constructor for a boolean expression for the specified mapping of the table. -
Method Summary
Modifier and TypeMethodDescriptionand
(SQLExpression expr) Conditional AND.eor
(SQLExpression expr) Exclusive OReq
(SQLExpression expr) Equality operator (equals to)boolean
in
(SQLExpression expr, boolean not) In expression.invoke
(String methodName, List<SQLExpression> args) Invocation of a method on this expression.ior
(SQLExpression expr) Conditional OR.ne
(SQLExpression expr) Not equality operator (not equals to)neg()
Unary Minus Operatornot()
Logical complementMethods inherited from class org.datanucleus.store.rdbms.sql.expression.SQLExpression
add, bitAnd, bitOr, cast, com, distinct, div, encloseInParentheses, ge, getJavaTypeMapping, getLowestOperator, getNumberOfSubExpressions, getParameterName, getSQLStatement, getSQLTable, getSubExpression, gt, is, isParameter, le, lt, mod, mul, setJavaTypeMapping, sub, toSQLText, unDistinct
-
Field Details
-
hasClosure
boolean hasClosure
-
-
Constructor Details
-
BooleanExpression
Constructor for a boolean 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 boolean
-
BooleanExpression
public BooleanExpression(SQLStatement stmt, JavaTypeMapping mapping, String functionName, List<SQLExpression> args) Generates statement as "FUNCTION_NAME(arg [,argN])" such as STARTS_WITH(arg1, arg2).- Parameters:
stmt
- The statementmapping
- Mapping to usefunctionName
- Name of functionargs
- SQLExpression list
-
BooleanExpression
Constructor for a boolean expression for the specified mapping of the table. The boolean expression DOESN'T have closure using this constructor.- Parameters:
stmt
- The statementtable
- The table this mapping belongs tomapping
- the mapping associated to this expression
-
BooleanExpression
Constructor for a boolean expression for the specified mapping of the table. The boolean expression has closure using this constructor.- Parameters:
stmt
- The statementmapping
- the mapping associated to this expression
-
BooleanExpression
public BooleanExpression(org.datanucleus.store.query.expression.Expression.MonadicOperator op, SQLExpression expr1) Perform an operationop
on expressionexpr1
. The boolean expression has closure using this constructor.- Parameters:
op
- operatorexpr1
- operand
-
BooleanExpression
public BooleanExpression(SQLExpression expr1, org.datanucleus.store.query.expression.Expression.DyadicOperator op, SQLExpression expr2) Perform an operationop
betweenexpr1
andexpr2
. The boolean expression has closure using this constructor.- Parameters:
expr1
- the first expressionop
- the operator between operandsexpr2
- the second expression
-
-
Method Details
-
hasClosure
public boolean hasClosure() -
and
Description copied from class:SQLExpression
Conditional AND. Evaluates its right-hand operand only if the value of its left-hand operand is true.- Overrides:
and
in classSQLExpression
- Parameters:
expr
- the right-hand operand- Returns:
- the result value is true if both operand values are true; otherwise, the result is false.
-
eor
Description copied from class:SQLExpression
Exclusive OR- Overrides:
eor
in classSQLExpression
- Parameters:
expr
- the right-hand operand- Returns:
- the result value is the bitwise exclusive OR of the operand values.
-
ior
Description copied from class:SQLExpression
Conditional OR. Evaluates its right-hand operand only if the value of its left-hand operand is false.- Overrides:
ior
in classSQLExpression
- Parameters:
expr
- the right-hand operand- Returns:
- the result value is false if both operand values are false; otherwise, the result is true.
-
not
Description copied from class:SQLExpression
Logical complement- Overrides:
not
in classSQLExpression
- Returns:
- the result value is false if operand is true; otherwise, the result is true.
-
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
-
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.
-
invoke
Description copied from class:SQLExpression
Invocation of a method on this expression.- Overrides:
invoke
in classSQLExpression
- Parameters:
methodName
- name of the method to invokeargs
- Args to this method (if any)- Returns:
- the converted value
-
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.
-