0

I am new JPA. My query is like below. if the columns fields are empty or null, Either i can check with LIKE operator or I can ignore that column for query, I don't know how to filter the query

 String query = "SELECT REGION_ID FROM CacheableDevice cd WHERE ";

if (serialNumber != null && WebserviceUtil.isNonEmpty(serialNumber)) {
    query += "cd.SERIAL_NUMBER = ?1";

} else {
    query += "cd.SERIAL_NUMBER LIKE %?1%";
}
if (memberName != null && WebserviceUtil.isNonEmpty(memberName)) {
    query += "cd.MEMBER_NAME = ?2";

} else {
    query += "cd.MEMBER_NAME LIKE %?2%";
}
if (crmNumber != null && WebserviceUtil.isNonEmpty(crmNumber)) {
    query += "cd.CRM_NUMBER = ?3";

} else {
    query += "cd.CRM_NUMBER LIKE %?3%";
}
if (model != null && WebserviceUtil.isNonEmpty(model)) {
    query += "cd.MODEL_TYPE = ?4";

} else {
    query += "cd.MODEL_TYPE LIKE %?4%";
}


@Query(query)

How to handle this condition?

James Z
  • 12,209
  • 10
  • 24
  • 44
prudvi raju
  • 505
  • 1
  • 5
  • 19

0 Answers0