Оператор Spring Data JPA ИЛИ для нескольких столбцов

У меня есть следующая структура сущности:

public class Car {

    private String make;
    private Integer price;
    private Integer year;
}

Я хочу найти все автомобили производства HONDA, цена которых превышает 50 000 или выпущенные 2019 года.

Запрос, который мне нужно придумать, выглядит следующим образом:

SELECT * FROM car WHERE make='HONDA' AND (price>50000 OR year=2019);

Я попробовал следующий метод, но он выдает запрос без скобок и, следовательно, дает неверные результаты.

List<Car> findAllByMakeAndPriceGreaterThanOrMake(String make, Integer price, Integer year);

В качестве альтернативы я могу использовать @Query для написания собственного запроса, но хотел посмотреть, существует ли существующий способ выполнить мое требование.


person Manoj Shrestha    schedule 24.06.2019    source источник
comment
Возможный дубликат Spring data jpa - Как объединить несколько И и Или через имя метода   -  person Jens Schauder    schedule 24.06.2019


Ответы (1)


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

List<Car> findByMakeAndPriceGreaterThanOrYear(String make,Integer price, Integer year)
person Sana    schedule 25.06.2019