Привет Я пытаюсь выбрать записи из одной таблицы, которая не имеет записей в подключенной таблице многих ко многим со специфическими значениями.Выберите записи, которые не имеют конкретных записей в объединенной таблице
Поясню на таблицах примера:
documentation:
id_documentation
irrelevant_data
user:
id_user
irrelevant_data
documentation_user:
id_documentation
id_user
role
То, что я хочу добиться того, чтобы выбрать каждую документацию, которая не имеет пользователя в определенной роли. Есть идеи?
Основная проблема заключается в том, что я использую java CriteriaBuilder для создания запроса, поэтому использование подзапросов невозможно (я думаю).
Возможно, это ... Есть ли возможность добавить дополнительные условия присоединения для добавления в предложение ON? Например: выберите * из документации d left join documentation_user du ON d.id_documentation = du.id_documentation И du.role = 2; – J33nn
Да, начиная с Hibernate 3.5.0 вы можете. см. [это исправление] (https://hibernate.onjira.com/browse/HHH-2308) – dan
Не могли бы вы рассказать мне, как достичь этого с помощью CriteriaBuilder? Корень <Документация> u = select.from (Documentation.class); Join dul = u.join ("documentationUserCollection", JoinType.LEFT); –
J33nn