T - the type of the resultpublic interface AbstractQuery<T> extends CommonAbstractCriteria
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.
| Modifier and Type | Method and Description | 
|---|---|
| AbstractQuery<T> | distinct(boolean distinct)Specify whether duplicate query results will be eliminated. | 
| <X> Root<X> | from(java.lang.Class<X> entityClass)Create and add a query root corresponding to the given entity,
 forming a cartesian product with any existing roots. | 
| <X> Root<X> | from(EntityType<X> entity)Create and add a query root corresponding to the given entity,
 forming a cartesian product with any existing roots. | 
| java.util.List<Expression<?>> | getGroupList()Return a list of the grouping expressions. | 
| Predicate | getGroupRestriction()Return the predicate that corresponds to the restriction(s)
 over the grouping items, or null if no restrictions have 
 been specified. | 
| java.lang.Class<T> | getResultType()Return the result type of the query or subquery. | 
| java.util.Set<Root<?>> | getRoots()Return the query roots. | 
| Selection<T> | getSelection()Return the selection of the query, or null if no selection
  has been set. | 
| AbstractQuery<T> | groupBy(Expression<?>... grouping)Specify the expressions that are used to form groups over
 the query results. | 
| AbstractQuery<T> | groupBy(java.util.List<Expression<?>> grouping)Specify the expressions that are used to form groups over
 the query results. | 
| AbstractQuery<T> | having(Expression<java.lang.Boolean> restriction)Specify a restriction over the groups of the query. | 
| AbstractQuery<T> | having(Predicate... restrictions)Specify restrictions over the groups of the query
 according the conjunction of the specified restriction 
 predicates. | 
| boolean | isDistinct()Return whether duplicate query results must be eliminated or
 retained. | 
| AbstractQuery<T> | where(Expression<java.lang.Boolean> restriction)Modify the query to restrict the query results according
 to the specified boolean expression. | 
| AbstractQuery<T> | where(Predicate... restrictions)Modify the query to restrict the query results according 
 to the conjunction of the specified restriction predicates. | 
getRestriction, subquery<X> Root<X> from(java.lang.Class<X> entityClass)
entityClass - the entity class<X> Root<X> from(EntityType<X> entity)
entity - metamodel entity representing the entity
                of type XAbstractQuery<T> where(Expression<java.lang.Boolean> restriction)
restriction - a simple or compound boolean expressionAbstractQuery<T> where(Predicate... restrictions)
restrictions - zero or more restriction predicatesAbstractQuery<T> groupBy(Expression<?>... grouping)
grouping - zero or more grouping expressionsAbstractQuery<T> groupBy(java.util.List<Expression<?>> grouping)
grouping - list of zero or more grouping expressionsAbstractQuery<T> having(Expression<java.lang.Boolean> restriction)
restriction - a simple or compound boolean expressionAbstractQuery<T> having(Predicate... restrictions)
restrictions - zero or more restriction predicatesAbstractQuery<T> distinct(boolean distinct)
distinct - boolean value specifying whether duplicate
        results must be eliminated from the query result or
        whether they must be retainedjava.util.Set<Root<?>> getRoots()
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.Selection<T> getSelection()
java.util.List<Expression<?>> getGroupList()
Predicate getGroupRestriction()
boolean isDistinct()
java.lang.Class<T> getResultType()
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.