[英]What is the Spring Data JPA method to use findBy for multiple fields and also use Containing clause for all the fields
我有一個名為Profile的類及其JPA存儲庫ProfileRepo我正在嘗試使用findBy方法使用名字或中間名或姓氏以及使用contains子句查找名稱。
public class Profile{
private String firstName;
private String middleName;
private String lastName;
//getters and setters
}
我在JPA存儲庫中使用以下查詢但它不接受該方法
List<Profile> findByLastNameContainingOrFirstNameContainingOrMiddleNameContainingAllIgnoreCase(String firstName,
String lastName,String midName);
請幫忙。
嘗試這個:
List<Profile> findByFirstNameIgnoreCaseContainingOrLastNameIgnoreCaseContainingOrMidNameIgnoreCaseContaining(String firstName, String lastName, String midName);
或這個:
@Query("select p from Profile p where upper(p.firstName) like concat('%', upper(?1), '%') or upper(p.lastName) like concat('%', upper(?2), '%') or upper(p.midName) like concat('%', upper(?3), '%')")
List<Profile> getByNames(String firstName, String lastName, String midName);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.