如何在spring JPA @query中使用ignore case?

时间:2016-02-06 05:29:15

标签: sql jpa ignore-case

我的查询如下:

@Query("SELECT b FROM Brand b WHERE b.name1 LIKE %:name1% or b.name2 like %:name2%")
List<Brand> findSome(@Param("name1") String name1, @Param("name2") String name2);

我想忽略大小写以便我尝试修改它

@Query("SELECT b FROM Brand b WHERE lower(b.name1) LIKE lower(%:name1%) or lower(b.name2) like lower(%:name2%)")

但这看起来不起作用,我该怎么办?

1 个答案:

答案 0 :(得分:5)

问题可能是你的JP-Query的语法。试着用这个:

lower(b.name1) LIKE concat('%', lower(:name1), '%')

进一步参考:http://openjpa.apache.org/builds/1.2.3/apache-openjpa/docs/jpa_langref.html#jpa_langref_like