开发项目里大多做的是 CURD 的操作,简单的一个 JpaRepository 就够用了,就算涉及到一些要判断空的字段查询,也可以用 JpaSpecificationExecutor 来解决
但今天碰到了个要使用数据库函数的查询,解决不了了,在此求助大家,例子如下:
select * from tableA where left(city, 2) in ('上海', '北京', '天津');
问题 1:jpa 里支持 left() 查询吗?
问题 2:支持的话,应该怎么写呢?
1
letitbesqzr 2018-04-16 12:09:14 +08:00
CriteriaBuilder 里有
<T> Expression<T> function(String name, Class<T> type, Expression<?>... args); |
2
tomoya92 OP @letitbesqzr #1 能告知一下具体的用法吗?谢谢
|
3
honeycomb 2018-04-16 12:38:12 +08:00 via Android
@liygheart 看文档+自己 Google 应该是最快的办法了:
关键词 jpa left criteriabuilder |
5
Jafee 2018-04-16 12:43:05 +08:00
|
7
linsage186 2018-04-16 13:46:55 +08:00
left 函数 jpa 应该没有,用 NativeQuery 实现或改查询语句实现一样效果
|
8
wangding85 2018-04-16 13:48:19 +08:00 via iPhone
关键字 QueryDslPredicateExecutor
|