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?