diff --git a/hibernate-core/src/main/java/org/hibernate/query/sqm/sql/internal/EntityValuedPathInterpretation.java b/hibernate-core/src/main/java/org/hibernate/query/sqm/sql/internal/EntityValuedPathInterpretation.java index a5ea0b7db8..24d5185afb 100644 --- a/hibernate-core/src/main/java/org/hibernate/query/sqm/sql/internal/EntityValuedPathInterpretation.java +++ b/hibernate-core/src/main/java/org/hibernate/query/sqm/sql/internal/EntityValuedPathInterpretation.java @@ -380,7 +380,7 @@ public class EntityValuedPathInterpretation extends AbstractSqmPathInterpreta final SqmPath sqmPath = (SqmPath) selection; // Expansion is needed if the table group is null, i.e. we're in a top level query where EVPs are always // expanded to all columns, or if the selection is on the same table (lhs) as the group by expression ... - return ( tableGroupPath == null || sqmPath.getLhs().getNavigablePath().equals( tableGroupPath ) ) + return ( tableGroupPath == null || sqmPath.getLhs() != null && sqmPath.getLhs().getNavigablePath().equals( tableGroupPath ) ) // ... and if the entity valued path is selected or any of its columns are && path.isParentOrEqual( sqmPath.getNavigablePath() ); }