首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QueryDSL (JPA) dayOfYear,将dayOfMonth转换为hibernate

QueryDSL (JPA) dayOfYear,将dayOfMonth转换为hibernate
EN

Stack Overflow用户
提问于 2013-09-24 14:36:49
回答 1查看 660关注 0票数 1

在运行以下java代码时,我得到了一个异常:

代码语言:javascript
复制
List<Tuple> companies2accLoginCount = accoutLoginCountQuery
                    .listDistinct(new QTuple(QCompany.company1.id, QAccountLogin.accountLogin.loginDatetime.dayOfMonth().countDistinct()));

例外情况:

代码语言:javascript
复制
java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: expecting CLOSE, found '(' near line 1, column 48 [select distinct company1.id, count(distinct day(accountLogin.loginDatetime))
from de.workxl.cxlbackend.database.model.Company company1
  left join company1.accounts as account
  left join account.accountLogins as accountLogin
where accountLogin.loginDatetime > ?1
group by company1.id
having count(distinct day(accountLogin.loginDatetime)) >= ?2]

一年中的每一天都是如此。看起来,在一年中或月中的一天之后,除了左括号之外,还会有其他的东西。

我使用Hibernate 4.2.2和QueryDSL 2.9.0

更新:我刚刚成功地将项目迁移到了QueryDSL 3.2.3 (不得不将Spring-Data-Commons1.6.1和spring升级到1.4.1 ),但例外情况仍然存在。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-24 18:24:37

这似乎是Hibernate解析器中的一个bug。这适用于EclipseLink。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18984611

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档