Подтвердить что ты не робот

Crudrepository findBy подпись метода с несколькими операторами?

У меня есть класс Entity:

@Entity
@Table(name = "EMAIL")
class Email{
    @Id
    @Column(name = "Id")
    Long id;
    @Column(name = "EMAIL_ID")
    String emailId;
    @Column(name = "PIN_CODE")
    String pincode;
}

Как написать метод findBy для нижеследующего запроса, используя crudrepository spring data jpa?

select email_id,name from email_details where eamil_id in('[email protected]','[email protected]') and pin_code in('633677','733877')

Я ожидаю, что метод jpa spring как и ниже, но как его построить?

List<Email> findBy.....(List<String> emails, List<String> pinCodes);

Я хочу получить список писем в одном удалении базы данных.

4b9b3361

Ответ 1

Следующая подпись будет делать:

List<Email> findByEmailIdInAndPincodeIn(List<String> emails, List<String> pinCodes);

Spring Данные JPA поддерживает большое количество ключевых слов для построения запроса. IN и AND относятся к ним.

Ответ 2

Попробуй это:

@Query("select c from Course c where c.course_id=?1 AND c.module_id IN (?2)");
List<Course> findByCourseIdAndModuleIdIn(Long courseId, List<Long> moduleIds);

Или это:

List<Course> findByCourseIdAndModuleIdIn(Long courseId, List<Long> moduleIds);

Spring Data JPA поддерживает большое количество ключевых слов для построения запроса. IN и AND среди них.