## Uses of Interface
javax.persistence.criteria.CriteriaQuery

Packages that use CriteriaQuery
javax.persistence: Java Persistence is the API for the management for persistence and object/relational mapping.
javax.persistence.criteria: Java Persistence Criteria API

### Uses of CriteriaQuery in javax.persistence

Methods in javax.persistence with parameters of type CriteriaQuery
`<T> TypedQuery<T>` EntityManager.`createQuery(CriteriaQuery<T> criteriaQuery)` Create an instance of `TypedQuery` for executing a criteria query.

### Uses of CriteriaQuery in javax.persistence.criteria

Methods in javax.persistence.criteria that return CriteriaQuery
`CriteriaQuery<Object>` CriteriaBuilder.`createQuery()` Create a `CriteriaQuery` object.
`<T> CriteriaQuery<T>` CriteriaBuilder.`createQuery(Class<T> resultClass)` Create a `CriteriaQuery` object with the specified result type.
`CriteriaQuery<Tuple>` CriteriaBuilder.`createTupleQuery()` Create a `CriteriaQuery` object that returns a tuple of objects as its result.
`CriteriaQuery<T>` CriteriaQuery.`distinct(boolean distinct)` Specify whether duplicate query results will be eliminated.
`CriteriaQuery<T>` CriteriaQuery.`groupBy(Expression<?>... grouping)` Specify the expressions that are used to form groups over the query results.
`CriteriaQuery<T>` CriteriaQuery.`groupBy(List<Expression<?>> grouping)` Specify the expressions that are used to form groups over the query results.
`CriteriaQuery<T>` CriteriaQuery.`having(Expression<Boolean> restriction)` Specify a restriction over the groups of the query.
`CriteriaQuery<T>` CriteriaQuery.`having(Predicate... restrictions)` Specify restrictions over the groups of the query according the conjunction of the specified restriction predicates.
`CriteriaQuery<T>` CriteriaQuery.`multiselect(List<Selection<?>> selectionList)` Specify the selection items that are to be returned in the query result.
`CriteriaQuery<T>` CriteriaQuery.`multiselect(Selection<?>... selections)` Specify the selection items that are to be returned in the query result.
`CriteriaQuery<T>` CriteriaQuery.`orderBy(List<Order> o)` Specify the ordering expressions that are used to order the query results.
`CriteriaQuery<T>` CriteriaQuery.`orderBy(Order... o)` Specify the ordering expressions that are used to order the query results.
`CriteriaQuery<T>` CriteriaQuery.`select(Selection<? extends T> selection)` Specify the item that is to be returned in the query result.
`CriteriaQuery<T>` CriteriaQuery.`where(Expression<Boolean> restriction)` Modify the query to restrict the query result according to the specified boolean expression.
`CriteriaQuery<T>` CriteriaQuery.`where(Predicate... restrictions)` Modify the query to restrict the query result according to the conjunction of the specified restriction predicates.