-5

Hibernate Request を書きたいのですが、私の Sql Request は次のようなものです:

都市別のユーザーグループから都市、カウント (*) を選択します。

ありがとう !

4

1 に答える 1

2

コード スニペットを使用する

session.createSQLQuery("Select city , count(*) from user group by city");

Hibernate を使用して、クエリに生の SQL コードを書き込むことができます。

編集:

提案されているように、hibernate には独自のクエリ言語 HQL があり、Query. また、テーブルの代わりに、よりユーザー フレンドリーなインターフェイスを使用してオブジェクトをクエリします。あなたの場合、クエリは次のように書き換えられます

session.createQuery("Select user.city, count(*) from User as user group by user.city");

大きな違いはありませんが、テーブルとその属性の代わりにオブジェクト User が使用されます。

クライテリア API を使用すると、

session.createCriteria(User.class)
  .setProjection(Projections.projectionList()
    .add(Projections.rowCount())
    .add(Projections.groupProperty("city"))
  ); 
于 2013-10-24T19:11:13.643 に答える