AbstractQuery<T>
- Type Parameters:
<T>
- the type of the result
- Super Interfaces:
CommonAbstractCriteria
The
AbstractQuery
interface defines functionality that is common to both top-level queries and subqueries. It is not intended to be used directly in query construction. All queries must have: a set of root entities (which may in turn own joins).
All queries may have: a conjunction of restrictions.
- Since:
- JPA 2.0
Public Methods
AbstractQuery<T> distinct(boolean distinct)
A true value will cause duplicates to be eliminated. A false value will cause duplicates to be retained. If distinct has not been specified, duplicate results must be retained.
- Parameters:
distinct
- boolean value specifying whether duplicate results must be eliminated from the query result or whether they must be retained
- Return:
- the modified query
- Since:
- JPA 2.0
- Parameters:
entityClass
- the entity class
- Return:
- query root corresponding to the given entity
- Since:
- JPA 2.0
- Parameters:
entity
- metamodel entity representing the entity of type X
- Return:
- query root corresponding to the given entity
- Since:
- JPA 2.0
Returns empty list if no grouping expressions have been specified. Modifications to the list do not affect the query.
- Return:
- the list of grouping expressions
- Since:
- JPA 2.0
- Return:
- having clause predicate
- Since:
- JPA 2.0
Class<T> getResultType()
If a result type was specified as an argument to the
createQuery
or subquery
method, that type will be returned. If the query was created using the createTupleQuery
method, the result type is Tuple
. Otherwise, the result type is Object
. - Return:
- result type
- Since:
- JPA 2.0
These are the roots that have been defined for the
CriteriaQuery
or Subquery
itself, including any subquery roots defined as a result of correlation. Returns empty set if no roots have been defined. Modifications to the set do not affect the query. - Return:
- the set of query roots
- Since:
- JPA 2.0
Selection<T> getSelection()
- Return:
- selection item
- Since:
- JPA 2.0
AbstractQuery<T> groupBy(Expression<?>... grouping)
Replaces the previous specified grouping expressions, if any. If no grouping expressions are specified, any previously added grouping expressions are simply removed.
- Parameters:
grouping
- zero or more grouping expressions
- Return:
- the modified query
- Since:
- JPA 2.0
AbstractQuery<T> groupBy(List<Expression<?>> grouping)
Replaces the previous specified grouping expressions, if any. If no grouping expressions are specified, any previously added grouping expressions are simply removed.
- Parameters:
grouping
- list of zero or more grouping expressions
- Return:
- the modified query
- Since:
- JPA 2.0
AbstractQuery<T> having(Expression<Boolean> restriction)
Replaces the previous having restriction(s), if any.
- Parameters:
restriction
- a simple or compound boolean expression
- Return:
- the modified query
- Since:
- JPA 2.0
AbstractQuery<T> having(Predicate... restrictions)
Replaces the previously having added restriction(s), if any. If no restrictions are specified, any previously added restrictions are simply removed.
- Parameters:
restrictions
- zero or more restriction predicates
- Return:
- the modified query
- Since:
- JPA 2.0
boolean isDistinct()
- Return:
- boolean indicating whether duplicate query results must be eliminated
- Since:
- JPA 2.0
- Parameters:
type
- the subquery result type
- Return:
- subquery
- Inherited from:
CommonAbstractCriteria
- Since:
- JPA 2.1
AbstractQuery<T> where(Expression<Boolean> restriction)
Replaces the previously added restriction(s), if any.
- Parameters:
restriction
- a simple or compound boolean expression
- Return:
- the modified query
- Since:
- JPA 2.0
AbstractQuery<T> where(Predicate... restrictions)
Replaces the previously added restriction(s), if any. If no restrictions are specified, any previously added restrictions are simply removed.
- Parameters:
restrictions
- zero or more restriction predicates
- Return:
- the modified query
- Since:
- JPA 2.0