У меня есть запрос, который проверяет, не содержит ли коллекция определенные элементы, а затем возвращает результат, но мне было интересно, есть ли лучший способ написать это, используя собственный SQL или JPQL
@Query("from User u where ?1 not member of u.roles and ?2 not member of u.roles and ?3 not member of u.roles")
List<User> findAllByRolesIn(Role role1, Role role2, Role role3);
Я попытался с помощью Set и передал его в качестве параметра для проверки, выполнив это
@Query("from User u where ?1 member of u.roles")
List<User> findAllByRolesIn(Set<Role> roles); // where the three roles are in the set
Я также попытался использовать in
и not in
, но не смог заставить это работать.