一对多的查询语句中,如果包含聚合查询? 求帮助!!!
如:一个用户对应多个学科如:数学 英语 语文 ,而每个学科 对应很多次的成绩,如每天一考试,那么每个学科的成绩又很多。那么想在查询数学成绩的同时,还要查询出当时的最高分和最低分,以及平均分。
//PHP伪代码
user class{
public function shuxues(){
return $this->hasMany(Shuxue::class);
}
public function yuwens(){
return $this->hasMany(Yuwen::class);
}
}
现在想查询 当前用户一个礼拜的数学成绩(成绩中包含了 最高分 最低分 平均分)
如:
[
1=>[
'fenshu'=>98,
'pingjun'=>90,
'zuigao'=>98,
'zuidi'=>90
],
2=>[
'fenshu'=>99,
'pingjun'=>90,
'zuigao'=>98,
'zuidi'=>90
]
]
with时使用闭包,使用select指定查询字段,然后再使用Raw使用原生sql语句,如:select(DB::rawI('MAX(score) AS max'), DB::raw('MIN(score) AS min'))。