To perform a SELECT LOWER(column)
query using Hibernate, you can use the LOWER
function in a JPQL
(Java Persistence Query Language) query.
For example, suppose you have a Person
entity with a name
field and a PersonRepository
interface that extends JpaRepository<Person, Long>
. You can use the LOWER
function to get a list of all person names in lowercase like this:
@Repository public interface PersonRepository extends JpaRepository<Person, Long> { @Query("SELECT LOWER(p.name) FROM Person p") List<String> findAllNamesLowercase(); }Source:www.lautturi.com
You can then call the findAllNamesLowercase()
method to execute the query and get a list of all person names in lowercase.
You can also use the LOWER
function in the WHERE
clause of a query to filter the results based on a lowercase comparison. For example:
@Repository public interface PersonRepository extends JpaRepository<Person, Long> { @Query("SELECT p FROM Person p WHERE LOWER(p.name) = LOWER(:name)") List<Person> findByNameIgnoreCase(@Param("name") String name); }
In this example, the findByNameIgnoreCase()
method will return a list of all persons with a name that matches the given name, ignoring the case of the name.