Interface SqmJoin<L,R>
- All Superinterfaces:
Expression<R>, FetchParent<L,R>, From<L, R>, Join<L, R>, JpaCriteriaNode, JpaExpression<R>, JpaFetchParent<L, R>, JpaFrom<L, R>, JpaJoin<L, R>, JpaPath<R>, JpaSelection<R>, JpaTupleElement<R>, Path<R>, Selection<R>, SemanticPathPart, Serializable, SqmCacheable, SqmExpressibleAccessor<R>, SqmExpression<R>, SqmFrom<L, R>, SqmNode, SqmPath<R>, SqmSelectableNode<R>, SqmTypedNode<R>, SqmVisitableNode, TupleElement<R>
- All Known Subinterfaces:
SqmAttributeJoin<O,T>, SqmCorrelatedJoin<L, R>, SqmCorrelatedSingularValuedJoin<L, R>, SqmSingularValuedJoin<L, R>, SqmTreatedAttributeJoin<L, R, R1>
- All Known Implementing Classes:
AbstractSqmAttributeJoin, AbstractSqmJoin, AbstractSqmPluralJoin, SqmBagJoin, SqmCorrelatedBagJoin, SqmCorrelatedCrossJoin, SqmCorrelatedCteJoin, SqmCorrelatedDerivedJoin, SqmCorrelatedEntityJoin, SqmCorrelatedListJoin, SqmCorrelatedMapJoin, SqmCorrelatedPluralPartJoin, SqmCorrelatedSetJoin, SqmCorrelatedSingularJoin, SqmCrossJoin, SqmCteJoin, SqmDerivedJoin, SqmEntityJoin, SqmFunctionJoin, SqmListJoin, SqmMapJoin, SqmPluralPartJoin, SqmSetJoin, SqmSingularJoin, SqmTreatedBagJoin, SqmTreatedCrossJoin, SqmTreatedEntityJoin, SqmTreatedListJoin, SqmTreatedMapJoin, SqmTreatedPluralPartJoin, SqmTreatedSetJoin, SqmTreatedSingularJoin
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptioncopy(SqmCopyContext context) <X> JpaCrossJoin<R, X> Create a cross join to the given entity type.<X> JpaCrossJoin<R, X> crossJoin(EntityDomainType<X> entity) Create a cross join to the given entity type.Obtain the join predicatedefault SqmPredicategetOn()The type of join.booleanWhen applicable, whether this join should be included in an implicit select clause<X> JpaDerivedJoin<X> Create a derived join for the given subquery.<E> SqmBagJoin<R, E> join(CollectionAttribute<? super R, E> attribute) Create a collection join to the given attribute.<E> SqmBagJoin<R, E> join(CollectionAttribute<? super R, E> attribute, JoinType jt) Create a collection join to the given attribute.join(EntityType<Y> entity) Create an entity join.join(EntityType<Y> entity, JoinType joinType) Create an entity join.<E> SqmListJoin<R, E> join(ListAttribute<? super R, E> list) Create a list join to the given attribute.<E> SqmListJoin<R, E> join(ListAttribute<? super R, E> list, JoinType jt) Create a list join to the given attribute.<K,V> SqmMapJoin <R, K, V> join(MapAttribute<? super R, K, V> map) Create a map join to the given attribute.<K,V> SqmMapJoin <R, K, V> join(MapAttribute<? super R, K, V> map, JoinType jt) Create a map join to the given attribute.<E> SqmSetJoin<R, E> join(SetAttribute<? super R, E> set) Create a set join to the given attribute.<E> SqmSetJoin<R, E> join(SetAttribute<? super R, E> set, JoinType jt) Create a set join to the given attribute.<A> SqmSingularJoin<R, A> join(SingularAttribute<? super R, A> attribute) Create a join to the given singular attribute.<A> SqmSingularJoin<R, A> join(SingularAttribute<? super R, A> attribute, JoinType jt) Create a join to the given singular attribute.default <X> JpaEntityJoin<R, X> join(Class<X> entityJavaType, SqmJoinType joinType) <Y> SqmAttributeJoin<R, Y> Create a join to the named attribute.<Y> SqmAttributeJoin<R, Y> Create a join to the named attribute.<X> JpaEntityJoin<R, X> join(EntityDomainType<X> entity) Create an entity join.<X> JpaJoin<?, X> join(JpaCteCriteria<X> cte) Create a join to the given CTE.<Y> SqmBagJoin<R, Y> joinCollection(String attributeName) Create a collection join to the named attribute.<Y> SqmBagJoin<R, Y> joinCollection(String attributeName, JoinType jt) Create a collection join to the named attribute.<X> JpaDerivedJoin<X> joinLateral(Subquery<X> subquery) Create a lateral derived join for the given subquery.<Y> SqmListJoin<R, Y> Create a list join to the named attribute.<Y> SqmListJoin<R, Y> Create a list join to the named attribute.<K,V> SqmMapJoin <R, K, V> Create a map join to the named attribute.<K,V> SqmMapJoin <R, K, V> Create a map join to the named attribute.<Y> SqmSetJoin<R, Y> Create a set join to the named attribute.<Y> SqmSetJoin<R, Y> Create a set join to the named attribute.on(BooleanExpression... restrictions) Set the join restriction.on(Expression<Boolean> restriction) Set the join restriction.on(List<? extends Expression<Boolean>> restrictions) Set the join restriction.on(JpaExpression<Boolean> restriction) Set the join restriction.on(JpaPredicate... restrictions) Set the join restriction.voidsetJoinPredicate(SqmPredicate predicate) Inject the join predicate<S extends R>
SqmTreatedJoin<L, R, S> Support for JPA's explicit (TREAT) down-casting.<S extends R>
SqmTreatedJoin<L, R, S> <S extends R>
SqmTreatedJoin<L, R, S> treatAs(EntityDomainType<S> treatAsType) Support for JPA's explicit (TREAT) down-casting.<S extends R>
SqmTreatedJoin<L, R, S> treatAs(EntityDomainType<S> treatTarget, String alias) Methods inherited from interface From
getJoinList, getJoins, isCorrelatedMethods inherited from interface Join
getJoinType, getParentMethods inherited from interface JpaExpression
coalesce, coalesce, count, countDistinct, in, isMember, isNotMember, nullif, nullif, selectCase, selectCaseMethods inherited from interface JpaFetchParent
fetch, fetch, fetch, fetch, fetch, fetch, getFetchesMethods inherited from interface JpaFrom
id, join, join, join, join, join, join, join, join, joinArray, joinArray, joinArray, joinArray, joinArrayCollection, joinArrayCollection, joinArrayCollection, joinArrayCollection, joinLateral, joinLateral, joinLateralMethods inherited from interface JpaJoin
getAttribute, treatMethods inherited from interface JpaPath
getParentPathMethods inherited from interface JpaSelection
alias, getCompoundSelectionItems, getSelectionItemsMethods inherited from interface JpaTupleElement
getJavaType, getJavaTypeIfKnown, getJavaTypeName, isEnumMethods inherited from interface Selection
isCompoundSelectionMethods inherited from interface SqmCacheable
cacheHashCode, isCompatibleMethods inherited from interface SqmExpression
as, asBigDecimal, asBigInteger, asDouble, asFloat, asInteger, asLong, asString, cast, castAs, equalTo, equalTo, in, in, in, in, isNotNull, isNull, notEqualTo, notEqualTo, visitSubSelectableNodesMethods inherited from interface SqmFrom
addSqmJoin, deepEquals, getCorrelationParent, getNumberOfJoins, getReferencedPathSource, getSqmJoins, getSqmTreats, hasImplicitlySelectableJoin, hasJoins, hasTreats, isDeepCompatible, join, join, resolveAlias, visitSqmJoinsMethods inherited from interface SqmNode
asLoggableText, nodeBuilderMethods inherited from interface SqmPath
applyInferableType, findRoot, get, get, get, get, get, getExplicitAlias, getJavaTypeDescriptor, getLhs, getNavigablePath, getNodeType, getResolvedModel, getReusablePath, getReusablePaths, registerReusablePath, resolveIndexedAccess, resolvePathPart, setExplicitAlias, treatAs, treatAs, type, visitReusablePathsMethods inherited from interface SqmSelectableNode
getTupleLengthMethods inherited from interface SqmTypedNode
getExpressible, getNodeJavaTypeMethods inherited from interface SqmVisitableNode
accept, appendHqlString, toHqlStringMethods inherited from interface TupleElement
getAlias
-
Method Details
-
getSqmJoinType
The type of join. -
isImplicitlySelectable
boolean isImplicitlySelectable()When applicable, whether this join should be included in an implicit select clause -
getJoinPredicate
-
setJoinPredicate
Inject the join predicate- Parameters:
predicate- The join predicate
-
join
-
join
Description copied from interface:JpaFromCreate a join to the named attribute. -
copy
-
treatAs
Description copied from interface:JpaPathSupport for JPA's explicit (TREAT) down-casting. -
treatAs
Description copied from interface:JpaPathSupport for JPA's explicit (TREAT) down-casting. -
treatAs
-
treatAs
-
getOn
-
on
-
on
-
on
-
on
-
on
-
join
@Nonnull default <X> JpaEntityJoin<R,X> join(@Nonnull Class<X> entityJavaType, @Nonnull SqmJoinType joinType) -
join
-
join
-
join
Description copied from interface:JpaFromCreate an entity join. -
join
-
joinLateral
Description copied from interface:JpaFromCreate a lateral derived join for the given subquery.- Specified by:
joinLateralin interfaceJpaFrom<L,R>
-
join
-
crossJoin
-
crossJoin
Description copied from interface:JpaFromCreate a cross join to the given entity type. -
join
Description copied from interface:JpaFromCreate a join to the given singular attribute. -
join
@Nonnull <A> SqmSingularJoin<R,A> join(@Nonnull SingularAttribute<? super R, A> attribute, @Nonnull JoinType jt) Description copied from interface:JpaFromCreate a join to the given singular attribute. -
join
Description copied from interface:JpaFromCreate a collection join to the given attribute. -
join
@Nonnull <E> SqmBagJoin<R,E> join(@Nonnull CollectionAttribute<? super R, E> attribute, @Nonnull JoinType jt) Description copied from interface:JpaFromCreate a collection join to the given attribute. -
join
-
join
Description copied from interface:JpaFromCreate a set join to the given attribute. -
join
-
join
Description copied from interface:JpaFromCreate a list join to the given attribute. -
join
-
join
@Nonnull <K,V> SqmMapJoin<R,K, joinV> (@Nonnull MapAttribute<? super R, K, V> map, @Nonnull JoinType jt) Description copied from interface:JpaFromCreate a map join to the given attribute. -
joinCollection
Description copied from interface:JpaFromCreate a collection join to the named attribute.- Specified by:
joinCollectionin interfaceFrom<L,R> - Specified by:
joinCollectionin interfaceJpaFrom<L,R> - Specified by:
joinCollectionin interfaceSqmFrom<L,R>
-
joinCollection
Description copied from interface:JpaFromCreate a collection join to the named attribute.- Specified by:
joinCollectionin interfaceFrom<L,R> - Specified by:
joinCollectionin interfaceJpaFrom<L,R> - Specified by:
joinCollectionin interfaceSqmFrom<L,R>
-
joinSet
-
joinSet
Description copied from interface:JpaFromCreate a set join to the named attribute. -
joinList
-
joinList
Description copied from interface:JpaFromCreate a list join to the named attribute. -
joinMap
-
joinMap
Description copied from interface:JpaFromCreate a map join to the named attribute.
-