2

postgres ネイティブ クエリを移行して、代わりに criteriabuilder を使用しようとしています。

私が達成したいのは: date_trunc('day',t.starttime) AS day, count(*) AS no_of_users from login_table t group by 1 order by 1

これまでのところ、グループを 1 オーダーずつ構築する方法がわかりません。

これは私が得た距離です:

    CriteriaBuilder cb = em.getCriteriaBuilder();
    CriteriaQuery<RequestPerWeek> cq = cb.createQuery(RequestPerWeek.class);
    Root<TLogin> from = cq.from(TLogin.class);
    String date = "week";
    Expression<Calendar> dateTrunc=cb.function("date_trunc",Calendar.class,cb.literal(date), from.get(TLogin_.starttime).as(Calendar.class));
    cq.select(cb.construct(RequestPerWeek.class,cb.count(from),dateTrunc));

私はいくつかの groupby の代替案を試しましたが、私が望むように機能するものはありません:-|

よろしくお願いします。

4

1 に答える 1