私のクエリにHibernateのsqlprojectionを実装するにはどうしたらいいですか?ここでHibernateでのフィールドクエリの合計を実装する方法は?
は私のクエリ
SELECT sum(total_amount) as total,created_at from order where created_at < DATE_SUB(curdate(), INTERVAL 7 DAY) and doctor_id = 193 GROUP BY created_at
である私は、このようなsqlRestriction
を使用してDATE_SUB
機能を実装している:
String sqlWhere = "created_at > DATE_SUB(curdate(), INTERVAL "+activityGraph+" DAY) AND doctor_id = "+id +" GROUP BY created_at";
Criteria criteria = Hibernatesession.createCriteria(Order.class);
criteria.add(Restrictions.sqlRestriction(sqlWhere));
をしかし、私はHibernateのクエリを使用して、フィールドの合計を取得する方法がわかりません。
HibernateのsetProjection
が私たちが望むように合計を得るために使用されていることがわかりましたが、私はそれをどのように使用するのか分かりません。ここでもdate_sub
関数のWHERE条件を書くのにsqlRestriction
を使いたいです。
setProjection
とsqlRestriction
を1つのクエリで使用します。