Spring Data JPA - 如何根据字段值过滤返回的数据?
Spring Data JPA - how to filter returned data based on a fields values?
我想知道如何过滤 Spring JPA 中返回给我的数据。
我知道使用 Spring JDBC,我可以完全控制并且基本上可以编写如下查询:
SELECT * FROM CAR
WHERE ACCIDENT_DATE IS NULL
OR BUY_DATE >= CURRENT_DATE
ORDER BY CAR_NUMBER
但是,使用 Spring JPA,我们不编写查询,而是编写像
这样的实体
@Entity
@Table(name = "CAR", schema = "MY_SCHEMA")
public class Car {
@Id
public Long carNumber;
...
}
如何根据天气过滤返回哪些汽车
- ACCIDENT_DATE 为 NULL 且
- BUY_DATE 大于 CURRENT_DATE
,由 CAR_NUMBER 在 Spring JPA 中排序?
在@DirkDayne 的帮助下,想出了如何做到这一点。谢谢德克
@Query("select c from CarEntity c where c.accidentDate is null or c.buyDate >= CURRENT_DATE")
List<CarEntity> getAllAvailableCars(Sort sort);
,然后在服务中调用它:
List<CarEntity> cars= (List<CarEntity>) carRepository.getAllAvailableCars(Sort.by("carNumber"));
我想知道如何过滤 Spring JPA 中返回给我的数据。
我知道使用 Spring JDBC,我可以完全控制并且基本上可以编写如下查询:
SELECT * FROM CAR
WHERE ACCIDENT_DATE IS NULL
OR BUY_DATE >= CURRENT_DATE
ORDER BY CAR_NUMBER
但是,使用 Spring JPA,我们不编写查询,而是编写像
这样的实体@Entity
@Table(name = "CAR", schema = "MY_SCHEMA")
public class Car {
@Id
public Long carNumber;
...
}
如何根据天气过滤返回哪些汽车
- ACCIDENT_DATE 为 NULL 且
- BUY_DATE 大于 CURRENT_DATE
,由 CAR_NUMBER 在 Spring JPA 中排序?
在@DirkDayne 的帮助下,想出了如何做到这一点。谢谢德克
@Query("select c from CarEntity c where c.accidentDate is null or c.buyDate >= CURRENT_DATE")
List<CarEntity> getAllAvailableCars(Sort sort);
,然后在服务中调用它:
List<CarEntity> cars= (List<CarEntity>) carRepository.getAllAvailableCars(Sort.by("carNumber"));