Class TemporalExpression
- java.lang.Object
-
- org.datanucleus.store.rdbms.sql.expression.SQLExpression
-
- org.datanucleus.store.rdbms.sql.expression.TemporalExpression
-
- Direct Known Subclasses:
AggregateTemporalExpression
,TemporalLiteral
,TemporalSubqueryExpression
public class TemporalExpression extends SQLExpression
Representation of temporal objects in java query languages. Can be used for anything based on java.util.Date (this includes java.time.* since they convert to java.util.Date types at the datastore).
-
-
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 Modifier Constructor Description protected
TemporalExpression(SQLExpression expr1, org.datanucleus.store.query.expression.Expression.DyadicOperator op, SQLExpression expr2)
TemporalExpression(SQLStatement stmt, JavaTypeMapping mapping, String functionName, List args)
Generates statement as "FUNCTION_NAME(arg [,argN])".TemporalExpression(SQLStatement stmt, JavaTypeMapping mapping, String functionName, List args, List types)
Generates statement as "FUNCTION_NAME(arg [AS type] [,argN [AS typeN]])".TemporalExpression(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 SQLExpression
add(SQLExpression expr)
Additive Operator.BooleanExpression
eq(SQLExpression expr)
Equality operator (equals to)BooleanExpression
ge(SQLExpression expr)
Relational operator (greater than or equals)BooleanExpression
gt(SQLExpression expr)
Relational operator (greater than)BooleanExpression
in(SQLExpression expr, boolean not)
In expression.SQLExpression
invoke(String methodName, List args)
Invocation of a method on this expression.BooleanExpression
le(SQLExpression expr)
Relational operator (lower than or equals)BooleanExpression
lt(SQLExpression expr)
Relational operator (lower than)BooleanExpression
ne(SQLExpression expr)
Not equality operator (not equals to)SQLExpression
sub(SQLExpression expr)
Additive Operator.-
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, toSQLText, unDistinct
-
-
-
-
Constructor Detail
-
TemporalExpression
public TemporalExpression(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
-
TemporalExpression
public TemporalExpression(SQLStatement stmt, JavaTypeMapping mapping, String functionName, List args)
Generates statement as "FUNCTION_NAME(arg [,argN])".- Parameters:
stmt
- SQL Statementmapping
- Mapping to usefunctionName
- Name of functionargs
- SQLExpression list
-
TemporalExpression
public TemporalExpression(SQLStatement stmt, JavaTypeMapping mapping, String functionName, List args, List types)
Generates statement as "FUNCTION_NAME(arg [AS type] [,argN [AS typeN]])".- Parameters:
stmt
- SQL Statementmapping
- Mapping to usefunctionName
- Name of functionargs
- SQLExpression listtypes
- Optional String/SQLExpression list of types for the args
-
TemporalExpression
protected TemporalExpression(SQLExpression expr1, org.datanucleus.store.query.expression.Expression.DyadicOperator op, SQLExpression expr2)
-
-
Method Detail
-
eq
public BooleanExpression eq(SQLExpression expr)
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
public BooleanExpression ne(SQLExpression expr)
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
public BooleanExpression lt(SQLExpression expr)
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
public BooleanExpression le(SQLExpression expr)
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
public BooleanExpression gt(SQLExpression expr)
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
public BooleanExpression ge(SQLExpression expr)
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
public BooleanExpression in(SQLExpression expr, boolean not)
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
public SQLExpression add(SQLExpression expr)
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
public SQLExpression sub(SQLExpression expr)
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.
-
invoke
public SQLExpression invoke(String methodName, List args)
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
-
-