Встречается на собеседованиях • сегодня

Как сделать join в HQL

В HQL (Hibernate Query Language) join выполняется аналогично SQL, но работает с сущностями, а не таблицами. Основные типы join:

  1. Неявный join (через точки):
java
from Order o where o.customer.name = 'John'
  1. Явный join с ключевым словом JOIN:
java
from Order o join o.customer c where c.name = 'John'
  1. LEFT JOIN для включения несоответствующих записей:
java
from Customer c left join c.orders o
  1. FETCH JOIN для жадной загрузки:
java
from Customer c join fetch c.orders

Важно:

  • В HQL join всегда основан на ассоциациях между сущностями
  • Используйте алиасы для join-таблиц (например, 'o.customer c')
  • FETCH JOIN помогает избежать проблемы N+1 запросов
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы