java - tables - ¿Hibernación llamada nombrada usando Like y%% operadores?
jpql order by (2)
Pero no está funcionando cuando le damos a cualquier personaje de Narasimham, es decir, a o n
Porque estás haciendo una búsqueda sensible a mayúsculas y minúsculas. Prueba N
, Na
, Nar
lugar. Si desea realizar una búsqueda que no distinga entre mayúsculas y minúsculas intente con upper
o lower
. me gusta
entityManager.createQuery("select at from AttendeesVO at where lower(at.user.firstName) LIKE lower(:searchKeyword)",AttendeesVO.class);
En realidad, mi pensamiento es que estoy dando el operador Like con%%
searchKeyword+"%"
significa valores de retorno que comienzan con searchKeyword.
"%"+searchKeyword+"%"
significa valores de retorno que contienen searchKeyword.
Decida según su requerimiento.
En mi código Hibernate JPA Sample ...
public List<AttendeesVO> addAttendees(String searchKeyword) {
TypedQuery<AttendeesVO> query = entityManager.createQuery(" select at from AttendeesVO at where at.user.firstName LIKE :searchKeyword",AttendeesVO.class);
query.setParameter("searchKeyword", searchKeyword+"%");
return query.getResultList();
}
funciona bien cuando se da String firstName=Narasimham
Pero no está funcionando cuando le damos a cualquier personaje de Narasimham
es decir, a
o n
En realidad, mi pensamiento es que estoy dando el operador Like
con % %
para que funcione cualquier carácter de String dado.
está utilizando query.setParameter("searchKeyword", searchKeyword+"%");
en lugar de query.setParameter("searchKeyword", "%"+searchKeyword+"%");
el primero devolverá filas para Narasimham
N
Na
Nar
Nara
etc.