今天在练习MySQL多表查询时碰到一个问题
一番思考后写出了如下sql语句
得到结果
但我还是想不出如何才能达到题目要求的结果,求解答
表a,表b关联查询,关联条件为student_id,并根据student_id进行分组即可。
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!这个用开窗函数分组排序就好了呀
select * from (
select a.student_id,
a.name,
b.score_num,
b.score_time,
row_number() over(partition by a.student_id order by b.score_num desc) rn
from table_a a, table_b b
where a.student_id = b.student_id
) where rn=1