mysql - 如何在mysql中获得每门课程的最后四个分数?
问题描述
我的数据库有四个表:student
, course
, stu_course
, score
.
课程表的列:id、name
学生表的列:id、firs_name、last_name、用户名、密码
stu_course表的列:id、stu_id、course_id (stu_id 和 cours_id 是外键)
列 fir score table: id, stu_cours_id, score, date (stu_cours_id isforein ksy)
我的问题是如何在分数表中获得每门课程的最后四个分数?
这是我目前拥有的:
SELECT s.first_name
, c.name
, sc.id
, k.score
, k.date
,
FROM student s
JOIN stu_course sc
ON sc.stu_id = s.id
JOIN course c
ON c.id = sc.course_id
JOIN score k
ON k.stu_course_id = sc.id
感谢您的帮助
解决方案
您可以使用 ORDER BY 语句对列表进行排序(使用 order by desc 进行降序排序),然后使用 LIMIT x 仅显示前 x 个结果。
实际上,如果您使用 ORDER BY DESC LIMIT x,您将在按您选择的列排序时看到底部的 x 结果
推荐阅读
- javascript - 如何为 iview ui 多选添加限制?
- android - Android:将效果附加到 SoundPool 声音?
- java - android studio 无法解码流:java.io.FileNotFoundException:
- javascript - Firebase once() 多次触发
- keras - Keras 自动编码器优化器和损失函数
- reporting-services - SSRS 必选参数和可选参数
- postgresql - 如何将后端 pid 与 Windows 应用程序相关联?
- javascript - 在 Puppeteer 中获取 Selector 的值
- python - 如何在 python 中更改 tf-idf fit 方法的参数?
- authentication - auth_request 模块的缓存结果,以用户名为键