Class SqmSelectStatement<T>
java.lang.Object
org.hibernate.query.sqm.tree.AbstractSqmNode
org.hibernate.query.sqm.tree.select.AbstractSqmSelectQuery<T>
org.hibernate.query.sqm.tree.select.SqmSelectStatement<T>
- All Implemented Interfaces:
AbstractQuery<T>
,CommonAbstractCriteria
,CriteriaQuery<T>
,CriteriaSelect<T>
,Serializable
,JpaCriteriaBase
,JpaCriteriaNode
,JpaCriteriaQuery<T>
,JpaCriteriaSelect<T>
,JpaCteContainer
,JpaQueryableCriteria<T>
,JpaSelectCriteria<T>
,ParameterCollector
,SqmCteContainer
,SqmSelectQuery<T>
,SqmNode
,SqmQuery<T>
,SqmStatement<T>
,SqmVisitableNode
public class SqmSelectStatement<T>
extends AbstractSqmSelectQuery<T>
implements JpaCriteriaQuery<T>, SqmStatement<T>, ParameterCollector
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.hibernate.query.sqm.tree.SqmStatement
SqmStatement.ParameterResolutions
-
Field Summary
-
Constructor Summary
ConstructorsConstructorDescriptionSqmSelectStatement
(Class<T> resultJavaType, NodeBuilder nodeBuilder) SqmSelectStatement
(Class<T> resultJavaType, SqmQuerySource querySource, NodeBuilder nodeBuilder) SqmSelectStatement
(NodeBuilder nodeBuilder) SqmSelectStatement
(SqmQuerySource querySource, NodeBuilder nodeBuilder) SqmSelectStatement
(SqmQueryPart<T> queryPart, Class<T> resultType, Map<String, SqmCteStatement<?>> cteStatements, SqmQuerySource querySource, NodeBuilder builder) SqmSelectStatement
(SqmQueryPart<T> queryPart, Class<T> resultType, SqmQuerySource querySource, NodeBuilder builder) SqmSelectStatement
(SqmSelectStatement<T> original) -
Method Summary
Modifier and TypeMethodDescription<X> X
accept
(SemanticQueryWalker<X> walker) Accept the walker per visitationvoid
addParameter
(SqmParameter<?> parameter) boolean
copy
(SqmCopyContext context) <X> SqmSelectStatement<X>
createCopy
(SqmCopyContext context, Class<X> resultType) A query that returns the number of results of this query.distinct
(boolean distinct) fetch
(Number fetch, FetchClauseType fetchClauseType) fetch
(JpaExpression<? extends Number> fetch) fetch
(JpaExpression<? extends Number> fetch, FetchClauseType fetchClauseType) getFetch()
The query structure.Set<SqmParameter<?>>
Access to the (potentially still growing) collection of parameters for the statement.groupBy
(Expression<?>... expressions) groupBy
(List<Expression<?>> grouping) having
(Expression<Boolean> booleanExpression) multiselect
(Selection<?>... selections) multiselect
(List<Selection<?>> selectionList) offset
(JpaExpression<? extends Number> offset) boolean
<U> SqmSubQuery<U>
subquery
(EntityType<U> type) <U> SqmSubQuery<U>
boolean
void
validateResultType
(Class<?> resultType) where
(Expression<Boolean> restriction) protected <X> JpaCteCriteria<X>
withInternal
(String name, AbstractQuery<X> criteria) protected <X> JpaCteCriteria<X>
withInternal
(String name, AbstractQuery<X> baseCriteria, boolean unionDistinct, Function<JpaCteCriteria<X>, AbstractQuery<X>> recursiveCriteriaProducer) Methods inherited from class org.hibernate.query.sqm.tree.select.AbstractSqmSelectQuery
appendHqlString, copyCteStatements, from, from, from, from, from, getCteCriteria, getCteCriterias, getCteStatement, getCteStatements, getGroupList, getGroupRestriction, getQueryPart, getRestriction, getResultSelection, getResultType, getRootList, getRoots, getSelection, isDistinct, setQueryPart, with, with, withRecursiveUnionAll, withRecursiveUnionAll, withRecursiveUnionDistinct, withRecursiveUnionDistinct
Methods inherited from class org.hibernate.query.sqm.tree.AbstractSqmNode
nodeBuilder
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface jakarta.persistence.criteria.AbstractQuery
getGroupList, getResultType, getRoots, isDistinct
Methods inherited from interface org.hibernate.query.criteria.JpaCriteriaQuery
from, from, getOrderList, getRootList
Methods inherited from interface org.hibernate.query.criteria.JpaCteContainer
getCteCriteria, getCteCriterias, with, with, withRecursiveUnionAll, withRecursiveUnionAll, withRecursiveUnionDistinct, withRecursiveUnionDistinct
Methods inherited from interface org.hibernate.query.criteria.JpaSelectCriteria
from, from, from, getGroupRestriction, getRestriction, getSelection
Methods inherited from interface org.hibernate.query.sqm.tree.SqmNode
asLoggableText, nodeBuilder
Methods inherited from interface org.hibernate.query.sqm.tree.SqmVisitableNode
appendHqlString, toHqlString
-
Constructor Details
-
SqmSelectStatement
-
SqmSelectStatement
-
SqmSelectStatement
public SqmSelectStatement(Class<T> resultJavaType, SqmQuerySource querySource, NodeBuilder nodeBuilder) -
SqmSelectStatement
public SqmSelectStatement(SqmQueryPart<T> queryPart, Class<T> resultType, SqmQuerySource querySource, NodeBuilder builder) -
SqmSelectStatement
public SqmSelectStatement(SqmQueryPart<T> queryPart, Class<T> resultType, Map<String, SqmCteStatement<?>> cteStatements, SqmQuerySource querySource, NodeBuilder builder) -
SqmSelectStatement
- Implementation Note:
- This form is used from the criteria query API.
-
SqmSelectStatement
- Implementation Note:
- This form is used when transforming HQL to criteria. All it does is change the SqmQuerySource to CRITERIA in order to allow correct parameter handing.
-
-
Method Details
-
copy
-
createCopy
-
validateResultType
-
getQuerySource
- Specified by:
getQuerySource
in interfaceSqmStatement<T>
-
getQuerySpec
Description copied from interface:JpaSelectCriteria
The query structure. SeeJpaQueryStructure
for details- Specified by:
getQuerySpec
in interfaceJpaSelectCriteria<T>
- Specified by:
getQuerySpec
in interfaceSqmSelectQuery<T>
- Overrides:
getQuerySpec
in classAbstractSqmSelectQuery<T>
-
producesUniqueResults
public boolean producesUniqueResults() -
containsCollectionFetches
public boolean containsCollectionFetches() -
usesDistinct
public boolean usesDistinct() -
getSqmParameters
Description copied from interface:SqmStatement
Access to the (potentially still growing) collection of parameters for the statement.- Specified by:
getSqmParameters
in interfaceSqmStatement<T>
-
resolveParameters
- Specified by:
resolveParameters
in interfaceSqmStatement<T>
-
accept
Description copied from interface:SqmVisitableNode
Accept the walker per visitation- Specified by:
accept
in interfaceSqmVisitableNode
-
addParameter
- Specified by:
addParameter
in interfaceParameterCollector
-
withInternal
- Overrides:
withInternal
in classAbstractSqmSelectQuery<T>
-
withInternal
protected <X> JpaCteCriteria<X> withInternal(String name, AbstractQuery<X> baseCriteria, boolean unionDistinct, Function<JpaCteCriteria<X>, AbstractQuery<X>> recursiveCriteriaProducer) - Overrides:
withInternal
in classAbstractSqmSelectQuery<T>
-
distinct
- Specified by:
distinct
in interfaceAbstractQuery<T>
- Specified by:
distinct
in interfaceCriteriaQuery<T>
- Specified by:
distinct
in interfaceJpaCriteriaQuery<T>
- Specified by:
distinct
in interfaceJpaSelectCriteria<T>
- Specified by:
distinct
in interfaceSqmSelectQuery<T>
- Overrides:
distinct
in classAbstractSqmSelectQuery<T>
-
getParameters
Description copied from interface:JpaCriteriaQuery
- Specified by:
getParameters
in interfaceCommonAbstractCriteria
- Specified by:
getParameters
in interfaceJpaCriteriaQuery<T>
-
subquery
- Specified by:
subquery
in interfaceCommonAbstractCriteria
- Specified by:
subquery
in interfaceJpaCriteriaQuery<T>
-
where
- Specified by:
where
in interfaceAbstractQuery<T>
- Specified by:
where
in interfaceCriteriaQuery<T>
- Specified by:
where
in interfaceJpaCriteriaQuery<T>
-
having
- Specified by:
having
in interfaceAbstractQuery<T>
- Specified by:
having
in interfaceCriteriaQuery<T>
- Specified by:
having
in interfaceJpaCriteriaQuery<T>
-
select
- Specified by:
select
in interfaceCriteriaQuery<T>
- Specified by:
select
in interfaceJpaCriteriaQuery<T>
-
multiselect
- Specified by:
multiselect
in interfaceCriteriaQuery<T>
- Specified by:
multiselect
in interfaceJpaCriteriaQuery<T>
-
multiselect
- Specified by:
multiselect
in interfaceCriteriaQuery<T>
- Specified by:
multiselect
in interfaceJpaCriteriaQuery<T>
-
orderBy
- Specified by:
orderBy
in interfaceCriteriaQuery<T>
- Specified by:
orderBy
in interfaceJpaCriteriaQuery<T>
-
orderBy
- Specified by:
orderBy
in interfaceCriteriaQuery<T>
- Specified by:
orderBy
in interfaceJpaCriteriaQuery<T>
-
subquery
- Specified by:
subquery
in interfaceCommonAbstractCriteria
- Specified by:
subquery
in interfaceJpaCriteriaBase
-
where
- Specified by:
where
in interfaceAbstractQuery<T>
- Specified by:
where
in interfaceCriteriaQuery<T>
- Specified by:
where
in interfaceJpaCriteriaQuery<T>
- Specified by:
where
in interfaceJpaSelectCriteria<T>
- Overrides:
where
in classAbstractSqmSelectQuery<T>
-
where
- Specified by:
where
in interfaceAbstractQuery<T>
- Specified by:
where
in interfaceCriteriaQuery<T>
- Specified by:
where
in interfaceJpaCriteriaQuery<T>
- Specified by:
where
in interfaceJpaSelectCriteria<T>
- Overrides:
where
in classAbstractSqmSelectQuery<T>
-
groupBy
- Specified by:
groupBy
in interfaceAbstractQuery<T>
- Specified by:
groupBy
in interfaceCriteriaQuery<T>
- Specified by:
groupBy
in interfaceJpaCriteriaQuery<T>
- Specified by:
groupBy
in interfaceJpaSelectCriteria<T>
- Overrides:
groupBy
in classAbstractSqmSelectQuery<T>
-
groupBy
- Specified by:
groupBy
in interfaceAbstractQuery<T>
- Specified by:
groupBy
in interfaceCriteriaQuery<T>
- Specified by:
groupBy
in interfaceJpaCriteriaQuery<T>
- Specified by:
groupBy
in interfaceJpaSelectCriteria<T>
- Overrides:
groupBy
in classAbstractSqmSelectQuery<T>
-
having
- Specified by:
having
in interfaceAbstractQuery<T>
- Specified by:
having
in interfaceCriteriaQuery<T>
- Specified by:
having
in interfaceJpaCriteriaQuery<T>
- Specified by:
having
in interfaceJpaSelectCriteria<T>
- Overrides:
having
in classAbstractSqmSelectQuery<T>
-
having
- Specified by:
having
in interfaceAbstractQuery<T>
- Specified by:
having
in interfaceCriteriaQuery<T>
- Specified by:
having
in interfaceJpaCriteriaQuery<T>
- Specified by:
having
in interfaceJpaSelectCriteria<T>
- Overrides:
having
in classAbstractSqmSelectQuery<T>
-
getOffset
- Specified by:
getOffset
in interfaceJpaCriteriaQuery<T>
-
offset
- Specified by:
offset
in interfaceJpaCriteriaQuery<T>
-
offset
- Specified by:
offset
in interfaceJpaCriteriaQuery<T>
-
getFetch
- Specified by:
getFetch
in interfaceJpaCriteriaQuery<T>
-
fetch
- Specified by:
fetch
in interfaceJpaCriteriaQuery<T>
-
fetch
public JpaCriteriaQuery<T> fetch(JpaExpression<? extends Number> fetch, FetchClauseType fetchClauseType) - Specified by:
fetch
in interfaceJpaCriteriaQuery<T>
-
fetch
- Specified by:
fetch
in interfaceJpaCriteriaQuery<T>
-
fetch
- Specified by:
fetch
in interfaceJpaCriteriaQuery<T>
-
getFetchClauseType
- Specified by:
getFetchClauseType
in interfaceJpaCriteriaQuery<T>
-
createCountQuery
Description copied from interface:JpaCriteriaQuery
A query that returns the number of results of this query.- Specified by:
createCountQuery
in interfaceJpaCriteriaQuery<T>
- See Also:
-