| javax.jcr.query.qom.Comparison
Comparison | public interface Comparison extends Constraint(Code) | | Filters node-tuples based on the outcome of a binary operation.
For any comparison,
Comparison.getOperand2 operand2 always evaluates to a
scalar value. In contrast,
Comparison.getOperand1 operand1 may evaluate to
an array of values (for example, the value of a multi-valued property),
in which case the comparison is separately performed for each element of
the array, and the Comparison constraint is satisfied as a
whole if the comparison against any element of the array is satisfied.
If
Comparison.getOperand1 operand1 and
Comparison.getOperand2 operand2 evaluate to values of different property types, the value of
Comparison.getOperand2 operand2 is converted to the property type of
the value of
Comparison.getOperand1 operand1 . If the type conversion
fails, the query is invalid.
Certain operators may only be applied to values of certain property types.
The following describes required operator support for each property type:
STRING
EqualTo , NotEqualTo , LessThan ,
LessThanOrEqualTo , GreaterThan ,
GreaterThanOrEqualTo , Like
BINARY
DATE , LONG , DOUBLE ,
DECIMAL
EqualTo , NotEqualTo , LessThan ,
LessThanOrEqualTo , GreaterThan ,
GreaterThanOrEqualTo
BOOLEAN , NAME , PATH ,
REFERENCE , WEAKREFERENCE , URI
If
Comparison.getOperator operator is not supported for the property type of
Comparison.getOperand1 operand1 , the query is invalid.
If
Comparison.getOperand1 operand1 evaluates to null (for example, if the
operand evaluates the value of a property which does not exist), the
constraint is not satisfied.
The EqualTo operator is satisfied only if the value of
Comparison.getOperand1 operand1 equals the value of
Comparison.getOperand2 operand2 .
The NotEqualTo operator is satisfied unless the value of
Comparison.getOperand1 operand1 equals the value of
Comparison.getOperand2 operand2 .
The LessThan operator is satisfied only if the value of
Comparison.getOperand1 operand1 is ordered before the value of
Comparison.getOperand2 operand2 .
The LessThanOrEqualTo operator is satisfied unless the
value of
Comparison.getOperand1 operand1 is ordered after the value of
Comparison.getOperand2 operand2 .
The GreaterThan operator is satisfied only if the value
of
Comparison.getOperand1 operand1 is ordered after the value of
Comparison.getOperand2 operand2 .
The GreaterThanOrEqualTo operator is satisfied unless the
value of
Comparison.getOperand1 operand1 is ordered before the value of
Comparison.getOperand2 operand2 .
The Like operator is satisfied only if the value of
Comparison.getOperand1 operand1 matches the pattern specified by the
value of
Comparison.getOperand2 operand2 , where in the pattern:
- the character "
% " matches zero or more characters, and
- the character "
_ " (underscore) matches exactly one
character, and
- the string "
\x " matches the character
"x ", and
- all other characters match themselves.
since: JCR 2.0 |
getOperand2 | public StaticOperand getOperand2()(Code) | | Gets the second operand.
the operand; non-null |
getOperator | public int getOperator()(Code) | | Gets the operator.
either |
|
|