繁体   English   中英

JPA查询和,或使用

[英]Jpa query and, or using

我写了一个查询,但此查询返回此错误。您有任何想法吗?我猜我由于括号而收到此错误

 @Query("select u from Context u where u.user.id <> :userId and u.publicWatch = 1 and  u.isDeleted = 0 and (u.contextType.id  IN :contextTypeId  or u.status IN :status)")
Page<Context> findFilteredContexts(@Param("userId") Long userId,@Param("contextTypeId") List<Long> contextTypeId,@Param("status") List<String> status, Pageable pageable);

错误:

造成原因:java.lang.IllegalArgumentException:org.hibernate.hql.internal.ast.QuerySyntaxException:意外的AST节点:{vector} [从com.huawei.ti.ei.web.domain.Context中选择count(u) u.user.id <>:userId和u.publicWatch = 1且u.isDeleted = 0以及(u.contextType.id IN(:contextTypeId_0_)或u.status IN:status_0 _ ,: status_1_)]

如果您使用的是较早版本的休眠模式,则必须在IN参数中加上括号(:status)HHH-5126

受影响的版本3.5.1 -3.6,但在评论中也有人报告了较新的版本...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM