我該如何在查詢中實現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
用於獲得我們所需的總和,但我不知道如何使用它。在這裏我也想用sqlRestriction
來寫函數的WHERE條件。
因此,我將在一個查詢中使用setProjection
和sqlRestriction
。