关于SQL分组查询求平均值的问题。
答案:2 悬赏:40
解决时间 2021-03-05 10:30
- 提问者网友:玫瑰园
- 2021-03-05 05:44
关于SQL分组查询求平均值的问题。
最佳答案
- 二级知识专家网友:夜余生
- 2021-03-05 06:26
public List findAvgScore(int sid) {
Query query = this
.getSession()
.createQuery(
"select s.year, s.semester, avg(s.score) from Score s where s.student.id=? group by s.year,s.semester")
.setParameter(0, sid);
List list = query.list();
List scoreList = new ArrayList();
for (int i = 0; i < list.size(); i++) {
Object obj[] = (Object[]) list.get(i);
Score score = new Score();
score.setYear(obj[0] + "");
score.setSemester(obj[1] + "");
score.setAvgScore(Double.parseDouble(obj[2].toString()));
scoreList.add(score);
// System.out.println(obj[0] + " " + obj[1] + " " + obj[2]);
}
return scoreList;
}
Query query = this
.getSession()
.createQuery(
"select s.year, s.semester, avg(s.score) from Score s where s.student.id=? group by s.year,s.semester")
.setParameter(0, sid);
List list = query.list();
List
for (int i = 0; i < list.size(); i++) {
Object obj[] = (Object[]) list.get(i);
Score score = new Score();
score.setYear(obj[0] + "");
score.setSemester(obj[1] + "");
score.setAvgScore(Double.parseDouble(obj[2].toString()));
scoreList.add(score);
// System.out.println(obj[0] + " " + obj[1] + " " + obj[2]);
}
return scoreList;
}
全部回答
- 1楼网友:走死在岁月里
- 2021-03-05 08:00
public List<Double> findAvgScore(int sid) {
return (List<Double>) this.getHibernateTemplate().find("select s.year,s.semester,avg(s.score) from Score s where s.student.id=? group by s.year,s.semester", sid);
}
return (List<Double>) this.getHibernateTemplate().find("select s.year,s.semester,avg(s.score) from Score s where s.student.id=? group by s.year,s.semester", sid);
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯