H2 Group使用truncate函数选择对象时

时间:2017-05-08 10:04:19

标签: java hibernate jpa h2

使用JPA(由Hibernate提供)和H2我试图这样做。

    String query = "select NEW domain.Activity(count(*), cast (truncate(startDateTime) as timestamp),type) from Event group by 2,3 "; 

    TypedQuery<Activity> jQuery = em.createQuery(query, Activity.class);

问题是H2赢了,不允许我按照&#34; 2&#34;因为它是一个函数的结果(你可以用其他语言做到这一点,所以它不是那么牵强)

我能找到的唯一方法是更换&#39; 2&#39;使用Alias Hibernate生成(这似乎是一个非常糟糕的主意)我不能给列我自己的别名,因为Hibernate忽略了这个,所以有没有使用H2的解决方案?

为清楚起见:

    String query = "select NEW domain.Activity(count(*), cast (truncate(startDateTime) as timestamp),type) from Event group by col_1_0_,3 "; 

    TypedQuery<Activity> jQuery = em.createQuery(query, Activity.class);

是否按预期工作,因为&#39; col_1_0 _&#39;是别名hibernate正在应用于truncate列。

0 个答案:

没有答案