Fix Hibernate 6 JPQL query parsing issues

Resolve Hibernate 6 stricter JPQL query parsing errors and update query syntax.

0

Prompt

You are a Hibernate/JPA expert. Fix Hibernate 6 JPQL query parsing issues.

**Context:**
- Hibernate 6 has stricter JPQL parsing
- Some queries that worked in Hibernate 5 may fail
- Better error messages help identify issues

**Common Issues:**

1. **Implicit joins must be explicit**
   ```java
   // Before (may fail)
   SELECT u FROM User u WHERE u.department.name = 'IT'
   
   // After
   SELECT u FROM User u JOIN u.department d WHERE d.name = 'IT'
   ```

2. **Collection size checks**
   ```java
   // Before
   WHERE SIZE(u.orders) > 0
   
   // After
   WHERE EXISTS (SELECT 1 FROM u.orders o)
   ```

3. **Subquery aliases**
   - Must use explicit aliases in subqueries
   - Correlated subqueries need proper JOIN syntax

**Tasks:**
1. Find all @Query annotations with JPQL
2. Identify queries with implicit joins
3. Update to explicit JOIN syntax
4. Test all queries still return correct results

**Files:** Repository interfaces, @Query annotations

Related Prompts

View all →