我有一个JPA Query方法,它按列值获取行:
findAllByLastNameOrderBySortKeyAsc(String name)
但我希望查询不区分大小写。在SQL中,我可以像这样使用upper()
函数
select * from table_name where upper(last_name) like '%NAME%' order by sort_key asc
但我还没有找到任何关于如何使用命名查询实现此功能的示例或文档。
更新
虽然它没有回答如何将upper()
或lower()
用于命名查询的问题,但我能够通过使用IgnoreCase
来解决不区分大小写的查询问题。命名查询如下:
findAllByLastNameIgnoreCaseOrderBySortKeyAsc(String name)
答案 0 :(得分:0)
如 spring-data-jpa 文档中所述,您必须使用 IgnoreCase 关键字不区分大小写。
您的方法定义应如下所示:
findAllByLastNameIgnoreCaseOrderBySortKeyAsc(String name)